[INFO] fetching crate jvmrs 0.1.1...
[INFO] testing jvmrs-0.1.1 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate jvmrs 0.1.1 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate jvmrs 0.1.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate jvmrs 0.1.1
[INFO] tweaked toml for crates.io crate jvmrs 0.1.1 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate jvmrs 0.1.1 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate jvmrs 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 325200ddf1d89766f8745a03b6fb7c22aa4a759af705104bfeb8b603adb33990
[INFO] running `Command { std: "docker" "start" "-a" "325200ddf1d89766f8745a03b6fb7c22aa4a759af705104bfeb8b603adb33990", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "325200ddf1d89766f8745a03b6fb7c22aa4a759af705104bfeb8b603adb33990", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "325200ddf1d89766f8745a03b6fb7c22aa4a759af705104bfeb8b603adb33990", kill_on_drop: false }`
[INFO] [stdout] 325200ddf1d89766f8745a03b6fb7c22aa4a759af705104bfeb8b603adb33990
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 36360c31c45a149eb0ac214f4b78c26546269d16bb17cfa54f96d1202094690d
[INFO] running `Command { std: "docker" "start" "-a" "36360c31c45a149eb0ac214f4b78c26546269d16bb17cfa54f96d1202094690d", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling cranelift-isle v0.110.3
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.110.3
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling cranelift-bitset v0.110.3
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling slice-group-by v0.3.1
[INFO] [stderr]    Compiling bumpalo v3.20.2
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.110.3
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling cranelift-entity v0.110.3
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling cranelift-bforest v0.110.3
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling humantime v2.3.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling cranelift-control v0.110.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling region v2.2.0
[INFO] [stderr]    Compiling wasmtime-jit-icache-coherence v23.0.3
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling cranelift-codegen v0.110.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling cranelift-module v0.110.3
[INFO] [stderr]    Compiling cranelift-native v0.110.3
[INFO] [stderr]    Compiling cranelift-frontend v0.110.3
[INFO] [stderr]    Compiling cranelift-jit v0.110.3
[INFO] [stderr]    Compiling cranelift-object v0.110.3
[INFO] [stderr]    Compiling cranelift v0.110.3
[INFO] [stderr]    Compiling jvmrs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:543:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 560 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 566 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:543:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]    --> src/main.rs:490:17
[INFO] [stdout]     |
[INFO] [stdout] 490 |     if let Some(ref output_path) = wasm_output {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ArenaSlot` is never used
[INFO] [stdout]   --> src/allocator.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum ArenaSlot {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArenaAllocator` is never constructed
[INFO] [stdout]   --> src/allocator.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ArenaAllocator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:37:11
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ArenaAllocator {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  36 |     /// Initial capacity (number of object slots)
[INFO] [stdout]  37 |     const INITIAL_CAPACITY: usize = 256;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout]  41 |
[INFO] [stdout]  42 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn addr_to_index(&self, addr: u32) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArrayArena` is never constructed
[INFO] [stdout]    --> src/allocator.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ArrayArena {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl ArrayArena {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 165 |
[INFO] [stdout] 166 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_cache_dir` is never used
[INFO] [stdout]   --> src/class_cache.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `magic`, `minor_version`, `major_version`, `access_flags`, and `fields` are never read
[INFO] [stdout]   --> src/class_file.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ClassFile {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 13 |     pub magic: u32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 14 |     pub minor_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub major_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub constant_pool: Vec<ConstantPoolEntry>,
[INFO] [stdout] 17 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ClassFile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reference_kind` is never read
[INFO] [stdout]   --> src/class_file.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     ConstantMethodHandle {
[INFO] [stdout]    |     -------------------- field in this variant
[INFO] [stdout] 67 |         reference_kind: u8,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `descriptor_index` is never read
[INFO] [stdout]   --> src/class_file.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     ConstantMethodType {
[INFO] [stdout]    |     ------------------ field in this variant
[INFO] [stdout] 71 |         descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stdout]   --> src/class_file.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 82 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 83 |     pub name_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 84 |     pub descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stdout]    --> src/class_file.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ParseError {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 110 |     InvalidAttributeLength,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/class_loader.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl ClassLoader {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  31 |     /// Create a new class loader with the given classpath
[INFO] [stdout]  32 |     pub fn new(classpath: Vec<PathBuf>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn get_loaded_classes(&self) -> Vec<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn add_classpath(&mut self, path: PathBuf) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn get_classpath(&self) -> &[PathBuf] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn clear_cache(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn parse_classpath(classpath_str: &str) -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_system_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:227:8
[INFO] [stdout]     |
[INFO] [stdout] 227 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ParseError` and `MemoryError` are never constructed
[INFO] [stdout]   --> src/error.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum JvmError {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout]  8 |     /// Class file parsing errors
[INFO] [stdout]  9 |     ParseError(ParseError),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     MemoryError(MemoryError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/error.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ParseError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 49 |     /// Invalid magic number (not 0xCAFEBABE)
[INFO] [stdout] 50 |     InvalidMagic(u32),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 51 |     /// Unsupported class file version
[INFO] [stdout] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 53 |     /// Invalid constant pool tag
[INFO] [stdout] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     /// Invalid attribute length
[INFO] [stdout] 56 |     InvalidAttributeLength,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stdout] 58 |     InvalidUtf8String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Invalid method descriptor
[INFO] [stdout] 60 |     InvalidMethodDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |     /// Invalid field descriptor
[INFO] [stdout] 62 |     InvalidFieldDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     /// Invalid opcode
[INFO] [stdout] 64 |     InvalidOpcode(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 65 |     /// Invalid bytecode
[INFO] [stdout] 66 |     InvalidBytecode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum RuntimeError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 112 |     StackOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     ClassNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     InvalidTypeConversion(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     ArithmeticOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     InvalidArrayType(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     /// Invalid array length
[INFO] [stdout] 138 |     InvalidArrayLength(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     IllegalState(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     InvalidOpcode(u8),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 151 |     /// Exception thrown
[INFO] [stdout] 152 |     ExceptionThrown(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     ArrayStoreException,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     IllegalAccessException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 161 |     /// Instantiation exception
[INFO] [stdout] 162 |     InstantiationException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 163 |     /// String index out of bounds
[INFO] [stdout] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MemoryError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 231 |     /// Out of memory
[INFO] [stdout] 232 |     OutOfMemory,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     HeapCorruption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 243 |     /// Garbage collection failed
[INFO] [stdout] 244 |     GcError(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 245 |     /// Memory limit exceeded
[INFO] [stdout] 246 |     MemoryLimitExceeded(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     /// Invalid object header
[INFO] [stdout] 248 |     InvalidObjectHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     /// Invalid array header
[INFO] [stdout] 250 |     InvalidArrayHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     /// Memory allocation failed
[INFO] [stdout] 252 |     AllocationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:308:5
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub enum ClassLoadingError {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] 307 |     /// Class file not found
[INFO] [stdout] 308 |     ClassFileNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 312 |     ClassCircularityError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 317 |     /// Class verification failed
[INFO] [stdout] 318 |     VerificationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 319 |     /// Linkage error
[INFO] [stdout] 320 |     LinkageError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 321 |     /// Illegal access error
[INFO] [stdout] 322 |     IllegalAccessError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 323 |     /// Instantiation error
[INFO] [stdout] 324 |     InstantiationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 325 |     /// Class loader constraint violation
[INFO] [stdout] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stdout]    --> src/error.rs:370:5
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub enum NativeError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 370 |     NativeLibraryNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 371 |     /// Native library load failed
[INFO] [stdout] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 373 |     /// Unsatisfied link error
[INFO] [stdout] 374 |     UnsatisfiedLinkError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NativeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JvmResult` is never used
[INFO] [stdout]    --> src/error.rs:403:10
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InterpreterResult` is never used
[INFO] [stdout]    --> src/error.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ClassFileResult` is never used
[INFO] [stdout]    --> src/error.rs:409:10
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MemoryResult` is never used
[INFO] [stdout]    --> src/error.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_runtime_error` is never used
[INFO] [stdout]    --> src/error.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub fn to_runtime_error<T: ToString>(msg: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_parse_error` is never used
[INFO] [stdout]    --> src/error.rs:420:8
[INFO] [stdout]     |
[INFO] [stdout] 420 | pub fn to_parse_error<T: Into<ParseError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_memory_error` is never used
[INFO] [stdout]    --> src/error.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Generation` is never used
[INFO] [stdout]   --> src/gc.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Generation {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenObject` is never constructed
[INFO] [stdout]   --> src/gc.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct GenObject {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenerationalHeap` is never constructed
[INFO] [stdout]   --> src/gc.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct GenerationalHeap {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/gc.rs:57:15
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl GenerationalHeap {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  57 |     pub const DEFAULT_PROMOTION_THRESHOLD: u8 = 8;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  58 |
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn alloc_addr(&mut self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn allocate_string(&mut self, data: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn allocate_array(&mut self, array_type: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn get_gen_object(&self, addr: u32) -> Option<&GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     fn mark_from_roots(&mut self, addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     fn collect_references(&self, addr: u32) -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn minor_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 335 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 436 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 502 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ScopedRoot` is never constructed
[INFO] [stdout]    --> src/gc.rs:557:12
[INFO] [stdout]     |
[INFO] [stdout] 557 | pub struct ScopedRoot {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `addr` are never used
[INFO] [stdout]    --> src/gc.rs:563:12
[INFO] [stdout]     |
[INFO] [stdout] 562 | impl ScopedRoot {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 563 |     pub fn new(addr: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 573 |     pub fn addr(&self) -> u32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_roots` is never used
[INFO] [stdout]    --> src/gc.rs:590:8
[INFO] [stdout]     |
[INFO] [stdout] 590 | pub fn get_roots() -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_root` is never used
[INFO] [stdout]    --> src/gc.rs:595:8
[INFO] [stdout]     |
[INFO] [stdout] 595 | pub fn add_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_root` is never used
[INFO] [stdout]    --> src/gc.rs:602:8
[INFO] [stdout]     |
[INFO] [stdout] 602 | pub fn remove_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_debugger` is never used
[INFO] [stdout]   --> src/memory/mod.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Memory {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Heap {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     marked: HashSet<u32>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/memory/heap.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Heap {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap_object.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct HeapObject {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub marked: bool,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeapObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_owned_by`, `wait`, `notify`, and `notify_all` are never used
[INFO] [stdout]    --> src/memory/monitor.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl Monitor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn is_owned_by(&self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push_frame`, `pop_frame`, `current_frame`, `current_frame_mut`, and `depth` are never used
[INFO] [stdout]   --> src/memory/stack.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl JVMStack {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn push_frame(&mut self, frame: StackFrame) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn depth(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Boolean`, `Byte`, `Char`, and `Short` are never constructed
[INFO] [stdout]  --> src/memory/value.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Value {
[INFO] [stdout]   |          ----- variants in this enum
[INFO] [stdout] 6 |     Boolean(bool),
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 7 |     Byte(i8),
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     Char(u16),
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     Short(i16),
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Value` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_reference` is never used
[INFO] [stdout]   --> src/memory/value.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Value {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn is_reference(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Annotation` is never constructed
[INFO] [stdout]   --> src/annotations.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Annotation {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ElementValue` is never used
[INFO] [stdout]   --> src/annotations.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum ElementValue {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_attribute` is never used
[INFO] [stdout]   --> src/annotations.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn find_attribute<'a>(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_annotations` is never used
[INFO] [stdout]   --> src/annotations.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn parse_annotations(class: &ClassFile, attr: &AttributeInfo) -> Vec<Annotation> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_element_value` is never used
[INFO] [stdout]   --> src/annotations.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn parse_element_value(class: &ClassFile, data: &[u8], pos: &mut usize) -> ElementValue {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub fn get_annotations(class: &ClassFile, attrs: &[AttributeInfo]) -> Vec<Annotation> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_class_annotations` and `get_class_signature` are never used
[INFO] [stdout]    --> src/annotations.rs:145:12
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl ClassFile {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 144 |     /// Get class-level annotations
[INFO] [stdout] 145 |     pub fn get_class_annotations(&self) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stdout]    --> src/annotations.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | impl MethodInfo {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 156 |     /// Get method-level annotations
[INFO] [stdout] 157 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl FieldInfo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 168 |     /// Get field-level annotations
[INFO] [stdout] 169 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Interpreter {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn with_classpath(classpath: Vec<PathBuf>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 443 |     pub fn memory_mut(&mut self) -> &mut Memory {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 449 |     pub fn new_instance(&mut self, class_name: &str, args: &[Value]) -> Result<Value, JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     pub fn get_field_value(&self, obj: &Value, field_name: &str) -> Result<Value, JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 483 |     pub fn set_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 499 |     pub fn get_object_class(&self, obj: &Value) -> Result<String, JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 562 |     fn build_descriptor_for_args(args: &[Value]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 579 |     fn invoke_constructor_for_reflection(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 |     pub fn is_jit_enabled(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 610 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 615 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 632 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 637 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 642 |     pub fn get_class_reflection(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNIEnv` is never constructed
[INFO] [stdout]   --> src/jni.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct JNIEnv {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jobject` is never used
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jclass` is never used
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jmethodID` is never used
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jfieldID` is never used
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeMethod` is never constructed
[INFO] [stdout]   --> src/jni.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct JNINativeMethod {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jni_natives` is never used
[INFO] [stdout]   --> src/jni.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_natives` is never used
[INFO] [stdout]   --> src/jni.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn register_natives(class_name: &str, methods: &[JNINativeMethod]) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_native` is never used
[INFO] [stdout]   --> src/jni.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unregister_natives` is never used
[INFO] [stdout]   --> src/jni.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stdout]  --> src/native.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stdout]  --> src/native.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stdout]  --> src/native.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stdout]   --> src/native.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stdout]   --> src/native.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stdout]   --> src/native.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct JNINativeInterface_ {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JNINativeMethod` is never used
[INFO] [stdout]   --> src/native.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: union `jvalue` is never used
[INFO] [stdout]   --> src/native.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub union jvalue {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/native.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/native.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SimpleNativeMethod {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 60 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_native` is never used
[INFO] [stdout]    --> src/native.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl NativeRegistry {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_to_jvalue` is never used
[INFO] [stdout]    --> src/native.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jvalue_to_value` is never used
[INFO] [stdout]    --> src/native.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldReflection` is never constructed
[INFO] [stdout]  --> src/reflection.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct FieldReflection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct MethodReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConstructorReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ConstructorReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClassReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct ClassReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `descriptor_to_type` is never used
[INFO] [stdout]   --> src/reflection.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `class_to_reflection` is never used
[INFO] [stdout]   --> src/reflection.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_method_params` is never used
[INFO] [stdout]    --> src/reflection.rs:139:4
[INFO] [stdout]     |
[INFO] [stdout] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_return_type` is never used
[INFO] [stdout]    --> src/reflection.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/reflection.rs:232:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl ReflectionApi {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_class(&self, class_name: &str) -> Option<ClassReflection> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_fields(&self, class_name: &str) -> Vec<FieldReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn new_instance(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 |     pub fn get_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 423 |     pub fn set_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 436 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 449 |     pub fn get_object_class(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PUBLIC` is never used
[INFO] [stdout]    --> src/reflection.rs:460:15
[INFO] [stdout]     |
[INFO] [stdout] 460 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRIVATE` is never used
[INFO] [stdout]    --> src/reflection.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROTECTED` is never used
[INFO] [stdout]    --> src/reflection.rs:462:15
[INFO] [stdout]     |
[INFO] [stdout] 462 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STATIC` is never used
[INFO] [stdout]    --> src/reflection.rs:463:15
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub const STATIC: u16 = 0x0008;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FINAL` is never used
[INFO] [stdout]    --> src/reflection.rs:464:15
[INFO] [stdout]     |
[INFO] [stdout] 464 |     pub const FINAL: u16 = 0x0010;
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYNCHRONIZED` is never used
[INFO] [stdout]    --> src/reflection.rs:465:15
[INFO] [stdout]     |
[INFO] [stdout] 465 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VOLATILE` is never used
[INFO] [stdout]    --> src/reflection.rs:466:15
[INFO] [stdout]     |
[INFO] [stdout] 466 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSIENT` is never used
[INFO] [stdout]    --> src/reflection.rs:467:15
[INFO] [stdout]     |
[INFO] [stdout] 467 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NATIVE` is never used
[INFO] [stdout]    --> src/reflection.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]    --> src/reflection.rs:469:15
[INFO] [stdout]     |
[INFO] [stdout] 469 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ABSTRACT` is never used
[INFO] [stdout]    --> src/reflection.rs:470:15
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STRICTFP` is never used
[INFO] [stdout]    --> src/reflection.rs:471:15
[INFO] [stdout]     |
[INFO] [stdout] 471 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAGIC` is never used
[INFO] [stdout]  --> src/serialization.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const MAGIC: &[u8; 4] = b"JVRS";
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERSION` is never used
[INFO] [stdout]   --> src/serialization.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const VERSION: u8 = 1;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_NULL` is never used
[INFO] [stdout]   --> src/serialization.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const TAG_NULL: u8 = 0;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_INT` is never used
[INFO] [stdout]   --> src/serialization.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const TAG_INT: u8 = 1;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_LONG` is never used
[INFO] [stdout]   --> src/serialization.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const TAG_LONG: u8 = 2;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_FLOAT` is never used
[INFO] [stdout]   --> src/serialization.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const TAG_FLOAT: u8 = 3;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_DOUBLE` is never used
[INFO] [stdout]   --> src/serialization.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const TAG_DOUBLE: u8 = 4;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_REFERENCE` is never used
[INFO] [stdout]   --> src/serialization.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const TAG_REFERENCE: u8 = 5;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_ARRAY_REF` is never used
[INFO] [stdout]   --> src/serialization.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const TAG_ARRAY_REF: u8 = 6;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_BOOLEAN` is never used
[INFO] [stdout]   --> src/serialization.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const TAG_BOOLEAN: u8 = 7;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_BYTE` is never used
[INFO] [stdout]   --> src/serialization.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 | const TAG_BYTE: u8 = 8;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_CHAR` is never used
[INFO] [stdout]   --> src/serialization.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 | const TAG_CHAR: u8 = 9;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_SHORT` is never used
[INFO] [stdout]   --> src/serialization.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | const TAG_SHORT: u8 = 10;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_serializable` is never used
[INFO] [stdout]   --> src/serialization.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_serializable_class` is never used
[INFO] [stdout]   --> src/serialization.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn is_serializable_class(class: &ClassFile) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_len_prefixed_string` is never used
[INFO] [stdout]   --> src/serialization.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn write_len_prefixed_string<W: Write>(w: &mut W, s: &str) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_len_prefixed_string` is never used
[INFO] [stdout]   --> src/serialization.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn read_len_prefixed_string<R: Read>(r: &mut R) -> std::io::Result<String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_value` is never used
[INFO] [stdout]   --> src/serialization.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn write_value<W: Write>(w: &mut W, v: &Value) -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_value` is never used
[INFO] [stdout]    --> src/serialization.rs:116:4
[INFO] [stdout]     |
[INFO] [stdout] 116 | fn read_value<R: Read>(r: &mut R) -> std::io::Result<Value> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_object` is never used
[INFO] [stdout]    --> src/serialization.rs:179:8
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub fn serialize_object(obj: &HeapObject) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_object` is never used
[INFO] [stdout]    --> src/serialization.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub fn deserialize_object(data: &[u8], _class_name: &str) -> Result<HeapObject, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_value` is never used
[INFO] [stdout]    --> src/serialization.rs:239:8
[INFO] [stdout]     |
[INFO] [stdout] 239 | pub fn serialize_value(v: &Value) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_value` is never used
[INFO] [stdout]    --> src/serialization.rs:246:8
[INFO] [stdout]     |
[INFO] [stdout] 246 | pub fn deserialize_value(data: &[u8]) -> Result<Value, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_html_fragment` is never used
[INFO] [stdout]   --> src/visualization.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn export_html_fragment(frames: &[StackFrame]) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `html_escape` is never used
[INFO] [stdout]   --> src/visualization.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn html_escape(s: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `instruction_count`, `total_time_ns`, and `last_compiled` are never read
[INFO] [stdout]   --> src/jit.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MethodProfile {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub instruction_count: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 42 |     /// Time spent in this method (nanoseconds)
[INFO] [stdout] 43 |     pub total_time_ns: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `record_instructions` and `record_time` are never used
[INFO] [stdout]   --> src/jit.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl MethodProfile {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn record_instructions(&mut self, count: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn record_time(&mut self, time_ns: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_method_size` is never read
[INFO] [stdout]   --> src/jit.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct TieredCompilationConfig {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub max_method_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IrGenerationError` is never constructed
[INFO] [stdout]    --> src/jit.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum JitError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     IrGenerationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `level` are never read
[INFO] [stdout]    --> src/jit.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledCode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 148 |     /// Function name
[INFO] [stdout] 149 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub level: CompilationLevel,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `config` and `set_config` are never used
[INFO] [stdout]    --> src/jit.rs:331:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl CraneliftJitCompiler {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `link_executable` is never used
[INFO] [stdout]    --> src/jit.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 354 | impl AotCompiler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn link_executable(objects: &[PathBuf], output_path: &Path) -> JitResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 560 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 566 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stdout]    --> src/jit.rs:589:12
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl JitManager {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 589 |     pub fn get_or_compile_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stdout]    --> src/jit.rs:546:16
[INFO] [stdout]     |
[INFO] [stdout] 546 |     pub struct LlvmIrGenerator {}
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/jit.rs:549:16
[INFO] [stdout]     |
[INFO] [stdout] 548 |     impl LlvmIrGenerator {
[INFO] [stdout]     |     -------------------- associated function in this implementation
[INFO] [stdout] 549 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trace_classes`, `trace_methods`, and `max_stack_frames` are never read
[INFO] [stdout]   --> src/debug.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DebugConfig {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub trace_classes: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 14 |     /// Enable method entry/exit logging
[INFO] [stdout] 15 |     pub trace_methods: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Maximum number of stack frames to log (None for all)
[INFO] [stdout] 17 |     pub max_stack_frames: Option<usize>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/debug.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl JvmDebugger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn log_method_exit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rng_seed`, `fixed_timestamp_ns`, and `max_pause_ns` are never read
[INFO] [stdout]   --> src/deterministic.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DeterministicConfig {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 11 |     /// Fixed seed for any RNG (0 = use system time when disabled)
[INFO] [stdout] 12 |     pub rng_seed: u64,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 13 |     /// Use fixed "epoch" timestamp instead of actual time
[INFO] [stdout] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     /// Target max pause time in ns (for real-time / HFT; advisory)
[INFO] [stdout] 16 |     pub max_pause_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `blockchain`, `realtime`, and `hft` are never used
[INFO] [stdout]   --> src/deterministic.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DeterministicConfig {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 30 |     /// Preset for blockchain / smart contract execution
[INFO] [stdout] 31 |     pub fn blockchain() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn realtime(max_pause_ns: u64) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn hft() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeterministicMode` is never constructed
[INFO] [stdout]   --> src/deterministic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct DeterministicMode {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stdout]   --> src/deterministic.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl DeterministicMode {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stdout]    --> src/profiler.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Profiler {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stdout]    --> src/trace.rs:36:12
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl TraceRecorder {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Proxy` is never constructed
[INFO] [stdout]  --> src/aop.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Proxy {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AdviceKind` is never used
[INFO] [stdout]   --> src/aop.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AdviceKind {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pointcut` is never constructed
[INFO] [stdout]   --> src/aop.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Pointcut {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AopRegistry` is never constructed
[INFO] [stdout]   --> src/aop.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct AopRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stdout]   --> src/aop.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl AopRegistry {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_proxy` is never used
[INFO] [stdout]   --> src/aop.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn create_proxy(target_class: String, target_ref: u32, interceptor: Option<String>) -> Proxy {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stdout]  --> src/cloud.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct K8sOperatorConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stdout]   --> src/cloud.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DistributedObjectRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `JavaExtension` is never used
[INFO] [stdout]   --> src/extensions.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub trait JavaExtension: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NativeCallback` is never used
[INFO] [stdout]   --> src/extensions.rs:51:6
[INFO] [stdout]    |
[INFO] [stdout] 51 | type NativeCallback = Arc<dyn Fn(&[Value]) -> Result<Value, String> + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExtensionRegistry` is never constructed
[INFO] [stdout]   --> src/extensions.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct ExtensionRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register_native`, `has_native`, `invoke_native`, `load`, and `loaded_extensions` are never used
[INFO] [stdout]    --> src/extensions.rs:60:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  60 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn register_native(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn has_native(&self, key: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn invoke_native(&self, key: &str, args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stdout]    --> src/extensions.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `global` is never used
[INFO] [stdout]    --> src/extensions.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 137 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stdout] 138 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HotReloadManager` is never constructed
[INFO] [stdout]   --> src/hot_reload.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct HotReloadManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stdout]   --> src/hot_reload.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl HotReloadManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn replace_method(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_overflow_check` is never read
[INFO] [stdout]   --> src/security.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub stack_overflow_check: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stdout]    --> src/security.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Sanitizer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn check_stack_overflow(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn violation_count(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.40s
[INFO] running `Command { std: "docker" "inspect" "36360c31c45a149eb0ac214f4b78c26546269d16bb17cfa54f96d1202094690d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "36360c31c45a149eb0ac214f4b78c26546269d16bb17cfa54f96d1202094690d", kill_on_drop: false }`
[INFO] [stdout] 36360c31c45a149eb0ac214f4b78c26546269d16bb17cfa54f96d1202094690d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4d58714650a2b7c5f2d74d859a41791e515489bf8bdfab23ddc382575c36910a
[INFO] running `Command { std: "docker" "start" "-a" "4d58714650a2b7c5f2d74d859a41791e515489bf8bdfab23ddc382575c36910a", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling zerocopy-derive v0.8.42
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling regalloc2 v0.9.3
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling cranelift-codegen v0.110.3
[INFO] [stderr]    Compiling cranelift-module v0.110.3
[INFO] [stderr]    Compiling cranelift-frontend v0.110.3
[INFO] [stderr]    Compiling cranelift-native v0.110.3
[INFO] [stderr]    Compiling cranelift-object v0.110.3
[INFO] [stderr]    Compiling cranelift-jit v0.110.3
[INFO] [stderr]    Compiling cranelift v0.110.3
[INFO] [stderr]    Compiling jvmrs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:543:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 560 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 566 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:543:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProfileGuard`
[INFO] [stdout]   --> src/interpreter/mod.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jobject` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jclass` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jmethodID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `jfieldID` should have an upper camel case name
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/jit.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/jit.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/jit.rs:543:9
[INFO] [stdout]     |
[INFO] [stdout] 543 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::Cell`
[INFO] [stdout]  --> src/deterministic.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cell::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DebugConfig` and `JvmDebugger`
[INFO] [stdout]  --> src/tests.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use crate::debug::{DebugConfig, JvmDebugger};
[INFO] [stdout]   |                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `to_class_loading_error`, `to_parse_error`, and `to_runtime_error`
[INFO] [stdout]   --> src/tests.rs:10:38
[INFO] [stdout]    |
[INFO] [stdout] 10 |         ClassLoadingError, JvmError, to_class_loading_error, to_parse_error, to_runtime_error,
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HeapArray`, `Monitor`, and `StackFrame`
[INFO] [stdout]   --> src/tests.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use crate::memory::{Heap, HeapArray, Monitor, StackFrame, Value};
[INFO] [stdout]    |                               ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 |     let (mut frame, res) =
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:152:10
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:894:10
[INFO] [stdout]     |
[INFO] [stdout] 894 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:904:10
[INFO] [stdout]     |
[INFO] [stdout] 904 |     let (mut frame, res) =
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:910:10
[INFO] [stdout]     |
[INFO] [stdout] 910 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:924:10
[INFO] [stdout]     |
[INFO] [stdout] 924 |     let (mut frame, res) = run_instruction(0xa7, &[0x00, 0x0a], vec![], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:973:10
[INFO] [stdout]     |
[INFO] [stdout] 973 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:977:10
[INFO] [stdout]     |
[INFO] [stdout] 977 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:983:10
[INFO] [stdout]     |
[INFO] [stdout] 983 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:987:10
[INFO] [stdout]     |
[INFO] [stdout] 987 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stdout]   --> src/allocator.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl ArenaAllocator {
[INFO] [stdout]    | ------------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 560 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 566 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `descriptor`
[INFO] [stdout]   --> src/interpreter/invocation.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         descriptor: &str,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:139:10
[INFO] [stdout]     |
[INFO] [stdout] 139 |     let (mut frame, res) =
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:152:10
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:894:10
[INFO] [stdout]     |
[INFO] [stdout] 894 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:904:10
[INFO] [stdout]     |
[INFO] [stdout] 904 |     let (mut frame, res) =
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:910:10
[INFO] [stdout]     |
[INFO] [stdout] 910 |     let (mut frame, res) = run_instruction(
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:924:10
[INFO] [stdout]     |
[INFO] [stdout] 924 |     let (mut frame, res) = run_instruction(0xa7, &[0x00, 0x0a], vec![], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:973:10
[INFO] [stdout]     |
[INFO] [stdout] 973 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:977:10
[INFO] [stdout]     |
[INFO] [stdout] 977 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:983:10
[INFO] [stdout]     |
[INFO] [stdout] 983 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/interpreter/tests.rs:987:10
[INFO] [stdout]     |
[INFO] [stdout] 987 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stdout]     |          ----^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code_attr`
[INFO] [stdout]    --> src/jit.rs:236:13
[INFO] [stdout]     |
[INFO] [stdout] 236 |         let code_attr = method
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output_path`
[INFO] [stdout]    --> src/main.rs:490:17
[INFO] [stdout]     |
[INFO] [stdout] 490 |     if let Some(ref output_path) = wasm_output {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ArenaSlot` is never used
[INFO] [stdout]   --> src/allocator.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum ArenaSlot {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArenaAllocator` is never constructed
[INFO] [stdout]   --> src/allocator.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ArenaAllocator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:37:11
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl ArenaAllocator {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  36 |     /// Initial capacity (number of object slots)
[INFO] [stdout]  37 |     const INITIAL_CAPACITY: usize = 256;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout]  41 |
[INFO] [stdout]  42 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     fn addr_to_index(&self, addr: u32) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ArrayArena` is never constructed
[INFO] [stdout]    --> src/allocator.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct ArrayArena {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/allocator.rs:164:11
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl ArrayArena {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 165 |
[INFO] [stdout] 166 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_cache_dir` is never used
[INFO] [stdout]   --> src/class_cache.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `minor_version`, `access_flags`, and `fields` are never read
[INFO] [stdout]   --> src/class_file.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ClassFile {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 13 |     pub magic: u32,
[INFO] [stdout] 14 |     pub minor_version: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ClassFile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `reference_kind` is never read
[INFO] [stdout]   --> src/class_file.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     ConstantMethodHandle {
[INFO] [stdout]    |     -------------------- field in this variant
[INFO] [stdout] 67 |         reference_kind: u8,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `descriptor_index` is never read
[INFO] [stdout]   --> src/class_file.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     ConstantMethodType {
[INFO] [stdout]    |     ------------------ field in this variant
[INFO] [stdout] 71 |         descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stdout]   --> src/class_file.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 82 |     pub access_flags: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 83 |     pub name_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 84 |     pub descriptor_index: u16,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stdout]    --> src/class_file.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum ParseError {
[INFO] [stdout]     |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 110 |     InvalidAttributeLength,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/class_loader.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl ClassLoader {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn get_loaded_classes(&self) -> Vec<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn add_classpath(&mut self, path: PathBuf) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn get_classpath(&self) -> &[PathBuf] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn clear_cache(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_system_classpath` is never used
[INFO] [stdout]    --> src/class_loader.rs:227:8
[INFO] [stdout]     |
[INFO] [stdout] 227 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MemoryError` is never constructed
[INFO] [stdout]   --> src/error.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub enum JvmError {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 13 |     MemoryError(MemoryError),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/error.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub enum ParseError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 53 |     /// Invalid constant pool tag
[INFO] [stdout] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     /// Invalid attribute length
[INFO] [stdout] 56 |     InvalidAttributeLength,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stdout] 58 |     InvalidUtf8String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Invalid method descriptor
[INFO] [stdout] 60 |     InvalidMethodDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |     /// Invalid field descriptor
[INFO] [stdout] 62 |     InvalidFieldDescriptor(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 63 |     /// Invalid opcode
[INFO] [stdout] 64 |     InvalidOpcode(u8),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 65 |     /// Invalid bytecode
[INFO] [stdout] 66 |     InvalidBytecode(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum RuntimeError {
[INFO] [stdout]     |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 112 |     StackOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     ClassNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     InvalidTypeConversion(String, String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     ArithmeticOverflow,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     InvalidArrayType(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 137 |     /// Invalid array length
[INFO] [stdout] 138 |     InvalidArrayLength(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     IllegalState(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     InvalidOpcode(u8),
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 151 |     /// Exception thrown
[INFO] [stdout] 152 |     ExceptionThrown(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     ArrayStoreException,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     IllegalAccessException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 161 |     /// Instantiation exception
[INFO] [stdout] 162 |     InstantiationException(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 163 |     /// String index out of bounds
[INFO] [stdout] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub enum MemoryError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 242 |     HeapCorruption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 243 |     /// Garbage collection failed
[INFO] [stdout] 244 |     GcError(String),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 245 |     /// Memory limit exceeded
[INFO] [stdout] 246 |     MemoryLimitExceeded(usize),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     /// Invalid object header
[INFO] [stdout] 248 |     InvalidObjectHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 249 |     /// Invalid array header
[INFO] [stdout] 250 |     InvalidArrayHeader,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 251 |     /// Memory allocation failed
[INFO] [stdout] 252 |     AllocationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/error.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub enum ClassLoadingError {
[INFO] [stdout]     |          ----------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 312 |     ClassCircularityError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 317 |     /// Class verification failed
[INFO] [stdout] 318 |     VerificationFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 319 |     /// Linkage error
[INFO] [stdout] 320 |     LinkageError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 321 |     /// Illegal access error
[INFO] [stdout] 322 |     IllegalAccessError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 323 |     /// Instantiation error
[INFO] [stdout] 324 |     InstantiationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 325 |     /// Class loader constraint violation
[INFO] [stdout] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stdout]    --> src/error.rs:370:5
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub enum NativeError {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 370 |     NativeLibraryNotFound(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 371 |     /// Native library load failed
[INFO] [stdout] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 373 |     /// Unsatisfied link error
[INFO] [stdout] 374 |     UnsatisfiedLinkError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NativeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JvmResult` is never used
[INFO] [stdout]    --> src/error.rs:403:10
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `InterpreterResult` is never used
[INFO] [stdout]    --> src/error.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ClassFileResult` is never used
[INFO] [stdout]    --> src/error.rs:409:10
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MemoryResult` is never used
[INFO] [stdout]    --> src/error.rs:412:10
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_runtime_error` is never used
[INFO] [stdout]    --> src/error.rs:415:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub fn to_runtime_error<T: ToString>(msg: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_parse_error` is never used
[INFO] [stdout]    --> src/error.rs:420:8
[INFO] [stdout]     |
[INFO] [stdout] 420 | pub fn to_parse_error<T: Into<ParseError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_memory_error` is never used
[INFO] [stdout]    --> src/error.rs:430:8
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Generation` is never used
[INFO] [stdout]   --> src/gc.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Generation {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenObject` is never constructed
[INFO] [stdout]   --> src/gc.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct GenObject {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenerationalHeap` is never constructed
[INFO] [stdout]   --> src/gc.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct GenerationalHeap {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/gc.rs:57:15
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl GenerationalHeap {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  57 |     pub const DEFAULT_PROMOTION_THRESHOLD: u8 = 8;
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  58 |
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn alloc_addr(&mut self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn allocate_string(&mut self, data: String) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn allocate_array(&mut self, array_type: HeapArray) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn get_gen_object(&self, addr: u32) -> Option<&GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     fn mark_from_roots(&mut self, addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     fn collect_references(&self, addr: u32) -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn minor_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 335 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     pub fn object_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn array_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 436 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 502 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ScopedRoot` is never constructed
[INFO] [stdout]    --> src/gc.rs:557:12
[INFO] [stdout]     |
[INFO] [stdout] 557 | pub struct ScopedRoot {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `addr` are never used
[INFO] [stdout]    --> src/gc.rs:563:12
[INFO] [stdout]     |
[INFO] [stdout] 562 | impl ScopedRoot {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 563 |     pub fn new(addr: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 573 |     pub fn addr(&self) -> u32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_roots` is never used
[INFO] [stdout]    --> src/gc.rs:590:8
[INFO] [stdout]     |
[INFO] [stdout] 590 | pub fn get_roots() -> Vec<u32> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_root` is never used
[INFO] [stdout]    --> src/gc.rs:595:8
[INFO] [stdout]     |
[INFO] [stdout] 595 | pub fn add_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_root` is never used
[INFO] [stdout]    --> src/gc.rs:602:8
[INFO] [stdout]     |
[INFO] [stdout] 602 | pub fn remove_root(addr: u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_debugger` is never used
[INFO] [stdout]   --> src/memory/mod.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Memory {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Heap {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     marked: HashSet<u32>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/memory/heap.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Heap {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `marked` is never read
[INFO] [stdout]   --> src/memory/heap_object.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct HeapObject {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub marked: bool,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HeapObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_owned_by`, `wait`, `notify`, and `notify_all` are never used
[INFO] [stdout]    --> src/memory/monitor.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  11 | impl Monitor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn is_owned_by(&self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push_frame`, `pop_frame`, `current_frame`, `current_frame_mut`, and `depth` are never used
[INFO] [stdout]   --> src/memory/stack.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl JVMStack {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn push_frame(&mut self, frame: StackFrame) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn depth(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_reference` is never used
[INFO] [stdout]   --> src/memory/value.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Value {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn is_reference(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `type_name` and `elements` are never read
[INFO] [stdout]   --> src/annotations.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Annotation {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 12 |     pub type_name: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 13 |     pub elements: HashMap<String, ElementValue>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Annotation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ConstInt(i32),
[INFO] [stdout]    |     -------- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ConstInt(i32),
[INFO] [stdout] 19 +     ConstInt(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ConstString(String),
[INFO] [stdout]    |     ----------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 23 -     ConstString(String),
[INFO] [stdout] 23 +     ConstString(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/annotations.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Array(Vec<ElementValue>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Array(Vec<ElementValue>),
[INFO] [stdout] 27 +     Array(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ConstLong`, `ConstFloat`, `ConstDouble`, `Enum`, `Class`, and `Annotation` are never constructed
[INFO] [stdout]   --> src/annotations.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum ElementValue {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 19 |     ConstInt(i32),
[INFO] [stdout] 20 |     ConstLong(i64),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 21 |     ConstFloat(f32),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 22 |     ConstDouble(f64),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 23 |     ConstString(String),
[INFO] [stdout] 24 |     Enum(String, String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 25 |     Class(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 26 |     Annotation(Annotation),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_class_signature` is never used
[INFO] [stdout]    --> src/annotations.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl ClassFile {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stdout]    --> src/annotations.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | impl MethodInfo {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 156 |     /// Get method-level annotations
[INFO] [stdout] 157 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_annotations` is never used
[INFO] [stdout]    --> src/annotations.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl FieldInfo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 168 |     /// Get field-level annotations
[INFO] [stdout] 169 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct Interpreter {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stdout]   --> src/interpreter/mod.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stdout]    |                   ---------------- fields in this struct
[INFO] [stdout] 59 |     pub start_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 60 |     pub end_pc: usize,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 61 |     pub handler_pc: usize,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 62 |     pub catch_type: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/interpreter/mod.rs:516:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl Interpreter {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 516 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 562 |     fn build_descriptor_for_args(args: &[Value]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 |     pub fn is_jit_enabled(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 610 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 615 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 632 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 637 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 642 |     pub fn get_class_reflection(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resolve_interface_method` is never used
[INFO] [stdout]   --> src/interpreter/invocation.rs:45:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Interpreter {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNIEnv` is never constructed
[INFO] [stdout]   --> src/jni.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct JNIEnv {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jobject` is never used
[INFO] [stdout]   --> src/jni.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type jobject = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jclass` is never used
[INFO] [stdout]   --> src/jni.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub type jclass = *mut c_void;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jmethodID` is never used
[INFO] [stdout]   --> src/jni.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub type jmethodID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `jfieldID` is never used
[INFO] [stdout]   --> src/jni.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub type jfieldID = *mut c_void;
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeMethod` is never constructed
[INFO] [stdout]   --> src/jni.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct JNINativeMethod {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jni_natives` is never used
[INFO] [stdout]   --> src/jni.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `register_natives` is never used
[INFO] [stdout]   --> src/jni.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn register_natives(class_name: &str, methods: &[JNINativeMethod]) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_native` is never used
[INFO] [stdout]   --> src/jni.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unregister_natives` is never used
[INFO] [stdout]   --> src/jni.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stdout]  --> src/native.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stdout]  --> src/native.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stdout]  --> src/native.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stdout]   --> src/native.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stdout]   --> src/native.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stdout]   --> src/native.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct JNINativeInterface_ {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JNINativeMethod` is never used
[INFO] [stdout]   --> src/native.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: union `jvalue` is never used
[INFO] [stdout]   --> src/native.rs:34:11
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub union jvalue {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/native.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stdout]    |           ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 55 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/native.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct SimpleNativeMethod {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 60 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_native` is never used
[INFO] [stdout]    --> src/native.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl NativeRegistry {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_to_jvalue` is never used
[INFO] [stdout]    --> src/native.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `jvalue_to_value` is never used
[INFO] [stdout]    --> src/native.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FieldReflection` is never constructed
[INFO] [stdout]  --> src/reflection.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct FieldReflection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MethodReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct MethodReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConstructorReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct ConstructorReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClassReflection` is never constructed
[INFO] [stdout]   --> src/reflection.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct ClassReflection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `descriptor_to_type` is never used
[INFO] [stdout]   --> src/reflection.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `class_to_reflection` is never used
[INFO] [stdout]   --> src/reflection.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_method_params` is never used
[INFO] [stdout]    --> src/reflection.rs:139:4
[INFO] [stdout]     |
[INFO] [stdout] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_return_type` is never used
[INFO] [stdout]    --> src/reflection.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/reflection.rs:232:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl ReflectionApi {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_class(&self, class_name: &str) -> Option<ClassReflection> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_fields(&self, class_name: &str) -> Vec<FieldReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 |     pub fn get_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 423 |     pub fn set_field_value(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 436 |     pub fn invoke_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PUBLIC` is never used
[INFO] [stdout]    --> src/reflection.rs:460:15
[INFO] [stdout]     |
[INFO] [stdout] 460 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRIVATE` is never used
[INFO] [stdout]    --> src/reflection.rs:461:15
[INFO] [stdout]     |
[INFO] [stdout] 461 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PROTECTED` is never used
[INFO] [stdout]    --> src/reflection.rs:462:15
[INFO] [stdout]     |
[INFO] [stdout] 462 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STATIC` is never used
[INFO] [stdout]    --> src/reflection.rs:463:15
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub const STATIC: u16 = 0x0008;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FINAL` is never used
[INFO] [stdout]    --> src/reflection.rs:464:15
[INFO] [stdout]     |
[INFO] [stdout] 464 |     pub const FINAL: u16 = 0x0010;
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SYNCHRONIZED` is never used
[INFO] [stdout]    --> src/reflection.rs:465:15
[INFO] [stdout]     |
[INFO] [stdout] 465 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VOLATILE` is never used
[INFO] [stdout]    --> src/reflection.rs:466:15
[INFO] [stdout]     |
[INFO] [stdout] 466 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TRANSIENT` is never used
[INFO] [stdout]    --> src/reflection.rs:467:15
[INFO] [stdout]     |
[INFO] [stdout] 467 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NATIVE` is never used
[INFO] [stdout]    --> src/reflection.rs:468:15
[INFO] [stdout]     |
[INFO] [stdout] 468 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTERFACE` is never used
[INFO] [stdout]    --> src/reflection.rs:469:15
[INFO] [stdout]     |
[INFO] [stdout] 469 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ABSTRACT` is never used
[INFO] [stdout]    --> src/reflection.rs:470:15
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STRICTFP` is never used
[INFO] [stdout]    --> src/reflection.rs:471:15
[INFO] [stdout]     |
[INFO] [stdout] 471 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stdout]     |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_serializable` is never used
[INFO] [stdout]   --> src/serialization.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `export_html_fragment` is never used
[INFO] [stdout]   --> src/visualization.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn export_html_fragment(frames: &[StackFrame]) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `html_escape` is never used
[INFO] [stdout]   --> src/visualization.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn html_escape(s: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_compiled` is never read
[INFO] [stdout]   --> src/jit.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MethodProfile {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_method_size` is never read
[INFO] [stdout]   --> src/jit.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct TieredCompilationConfig {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub max_method_size: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IrGenerationError` is never constructed
[INFO] [stdout]    --> src/jit.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum JitError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     IrGenerationError(String),
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `level` are never read
[INFO] [stdout]    --> src/jit.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub struct CompiledCode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 148 |     /// Function name
[INFO] [stdout] 149 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub level: CompilationLevel,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `config` and `set_config` are never used
[INFO] [stdout]    --> src/jit.rs:331:12
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl CraneliftJitCompiler {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `link_executable` is never used
[INFO] [stdout]    --> src/jit.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 354 | impl AotCompiler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn link_executable(objects: &[PathBuf], output_path: &Path) -> JitResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `native_registry` is never read
[INFO] [stdout]    --> src/jit.rs:566:5
[INFO] [stdout]     |
[INFO] [stdout] 560 | pub struct JitManager {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 566 |     native_registry: NativeRegistry,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stdout]    --> src/jit.rs:589:12
[INFO] [stdout]     |
[INFO] [stdout] 569 | impl JitManager {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 589 |     pub fn get_or_compile_method(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stdout]    --> src/jit.rs:546:16
[INFO] [stdout]     |
[INFO] [stdout] 546 |     pub struct LlvmIrGenerator {}
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/jit.rs:549:16
[INFO] [stdout]     |
[INFO] [stdout] 548 |     impl LlvmIrGenerator {
[INFO] [stdout]     |     -------------------- associated function in this implementation
[INFO] [stdout] 549 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `trace_classes`, `trace_methods`, and `max_stack_frames` are never read
[INFO] [stdout]   --> src/debug.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct DebugConfig {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub trace_classes: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 14 |     /// Enable method entry/exit logging
[INFO] [stdout] 15 |     pub trace_methods: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Maximum number of stack frames to log (None for all)
[INFO] [stdout] 17 |     pub max_stack_frames: Option<usize>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/debug.rs:52:12
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl JvmDebugger {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn log_method_exit(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rng_seed`, `fixed_timestamp_ns`, and `max_pause_ns` are never read
[INFO] [stdout]   --> src/deterministic.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DeterministicConfig {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 11 |     /// Fixed seed for any RNG (0 = use system time when disabled)
[INFO] [stdout] 12 |     pub rng_seed: u64,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 13 |     /// Use fixed "epoch" timestamp instead of actual time
[INFO] [stdout] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     /// Target max pause time in ns (for real-time / HFT; advisory)
[INFO] [stdout] 16 |     pub max_pause_ns: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `blockchain`, `realtime`, and `hft` are never used
[INFO] [stdout]   --> src/deterministic.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl DeterministicConfig {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 30 |     /// Preset for blockchain / smart contract execution
[INFO] [stdout] 31 |     pub fn blockchain() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn realtime(max_pause_ns: u64) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn hft() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DeterministicMode` is never constructed
[INFO] [stdout]   --> src/deterministic.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct DeterministicMode {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stdout]   --> src/deterministic.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl DeterministicMode {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stdout]    --> src/profiler.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl Profiler {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stdout]    --> src/trace.rs:36:12
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl TraceRecorder {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `target_class`, `target_ref`, and `interceptor` are never read
[INFO] [stdout]   --> src/aop.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Proxy {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  8 |     pub target_class: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub target_ref: u32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 10 |     pub interceptor: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Proxy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AdviceKind` is never used
[INFO] [stdout]   --> src/aop.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AdviceKind {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pointcut` is never constructed
[INFO] [stdout]   --> src/aop.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Pointcut {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AopRegistry` is never constructed
[INFO] [stdout]   --> src/aop.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct AopRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stdout]   --> src/aop.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl AopRegistry {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stdout]  --> src/cloud.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct K8sOperatorConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stdout]   --> src/cloud.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct DistributedObjectRef {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `JavaExtension` is never used
[INFO] [stdout]   --> src/extensions.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub trait JavaExtension: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NativeCallback` is never used
[INFO] [stdout]   --> src/extensions.rs:51:6
[INFO] [stdout]    |
[INFO] [stdout] 51 | type NativeCallback = Arc<dyn Fn(&[Value]) -> Result<Value, String> + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExtensionRegistry` is never constructed
[INFO] [stdout]   --> src/extensions.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct ExtensionRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register_native`, `has_native`, `invoke_native`, `load`, and `loaded_extensions` are never used
[INFO] [stdout]    --> src/extensions.rs:60:12
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  60 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn register_native(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn has_native(&self, key: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn invoke_native(&self, key: &str, args: &[Value]) -> Result<Value, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stdout]    --> src/extensions.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `global` is never used
[INFO] [stdout]    --> src/extensions.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl ExtensionRegistry {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 137 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stdout] 138 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HotReloadManager` is never constructed
[INFO] [stdout]   --> src/hot_reload.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct HotReloadManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stdout]   --> src/hot_reload.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl HotReloadManager {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn replace_method(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_overflow_check` is never read
[INFO] [stdout]   --> src/security.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct SecurityConfig {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub stack_overflow_check: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stdout]    --> src/security.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Sanitizer {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn check_stack_overflow(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn violation_count(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 44.95s
[INFO] running `Command { std: "docker" "inspect" "4d58714650a2b7c5f2d74d859a41791e515489bf8bdfab23ddc382575c36910a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4d58714650a2b7c5f2d74d859a41791e515489bf8bdfab23ddc382575c36910a", kill_on_drop: false }`
[INFO] [stdout] 4d58714650a2b7c5f2d74d859a41791e515489bf8bdfab23ddc382575c36910a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5a3463ee567a41f2a81cb2219c76c38108450ee41aad89e07aff2d4dff00bb47
[INFO] running `Command { std: "docker" "start" "-a" "5a3463ee567a41f2a81cb2219c76c38108450ee41aad89e07aff2d4dff00bb47", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `ProfileGuard`
[INFO] [stderr]   --> src/interpreter/mod.rs:25:23
[INFO] [stderr]    |
[INFO] [stderr] 25 | use crate::profiler::{ProfileGuard, Profiler};
[INFO] [stderr]    |                       ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `jobject` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type jobject = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^ help: convert the identifier to upper camel case: `Jobject`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `jclass` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub type jclass = *mut c_void;
[INFO] [stderr]    |          ^^^^^^ help: convert the identifier to upper camel case: `Jclass`
[INFO] [stderr] 
[INFO] [stderr] warning: type `jmethodID` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:24:10
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub type jmethodID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^^ help: convert the identifier to upper camel case: `JmethodId`
[INFO] [stderr] 
[INFO] [stderr] warning: type `jfieldID` should have an upper camel case name
[INFO] [stderr]   --> src/jni.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type jfieldID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^ help: convert the identifier to upper camel case: `JfieldId`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]   --> src/jit.rs:15:33
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]    |                                 ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]   --> src/jit.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use std::sync::Arc;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/jit.rs:543:9
[INFO] [stderr]     |
[INFO] [stderr] 543 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::Cell`
[INFO] [stderr]  --> src/deterministic.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::cell::Cell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `descriptor`
[INFO] [stderr]   --> src/interpreter/invocation.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |         descriptor: &str,
[INFO] [stderr]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_descriptor`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `code_attr`
[INFO] [stderr]    --> src/jit.rs:236:13
[INFO] [stderr]     |
[INFO] [stderr] 236 |         let code_attr = method
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_code_attr`
[INFO] [stderr] 
[INFO] [stderr] warning: associated constant `GROWTH_FACTOR` is never used
[INFO] [stderr]   --> src/allocator.rs:40:11
[INFO] [stderr]    |
[INFO] [stderr] 35 | impl ArenaAllocator {
[INFO] [stderr]    | ------------------- associated constant in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `string_cache`, `exception_handlers`, and `current_exception` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:41:16
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub struct Interpreter {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stderr]    |                ^^^^^^^^^^^^
[INFO] [stderr] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `start_pc`, `end_pc`, `handler_pc`, and `catch_type` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub(crate) struct ExceptionHandler {
[INFO] [stderr]    |                   ---------------- fields in this struct
[INFO] [stderr] 59 |     pub start_pc: usize,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 60 |     pub end_pc: usize,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 61 |     pub handler_pc: usize,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 62 |     pub catch_type: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ExceptionHandler` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `resolve_interface_method` is never used
[INFO] [stderr]   --> src/interpreter/invocation.rs:45:19
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl Interpreter {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 45 |     pub(crate) fn resolve_interface_method(
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `native_registry` is never read
[INFO] [stderr]    --> src/jit.rs:566:5
[INFO] [stderr]     |
[INFO] [stderr] 560 | pub struct JitManager {
[INFO] [stderr]     |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 566 |     native_registry: NativeRegistry,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:139:10
[INFO] [stderr]     |
[INFO] [stderr] 139 |     let (mut frame, res) =
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:152:10
[INFO] [stderr]     |
[INFO] [stderr] 152 |     let (mut frame, res) = run_instruction(
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:894:10
[INFO] [stderr]     |
[INFO] [stderr] 894 |     let (mut frame, res) = run_instruction(
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:904:10
[INFO] [stderr]     |
[INFO] [stderr] 904 |     let (mut frame, res) =
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:910:10
[INFO] [stderr]     |
[INFO] [stderr] 910 |     let (mut frame, res) = run_instruction(
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:924:10
[INFO] [stderr]     |
[INFO] [stderr] 924 |     let (mut frame, res) = run_instruction(0xa7, &[0x00, 0x0a], vec![], vec![]);
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:973:10
[INFO] [stderr]     |
[INFO] [stderr] 973 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:977:10
[INFO] [stderr]     |
[INFO] [stderr] 977 |     let (mut frame, res) = run_instruction(0xc6, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:983:10
[INFO] [stderr]     |
[INFO] [stderr] 983 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Reference(1)], vec![]);
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/interpreter/tests.rs:987:10
[INFO] [stderr]     |
[INFO] [stderr] 987 |     let (mut frame, res) = run_instruction(0xc7, &[0x00, 0x05], vec![Value::Null], vec![]);
[INFO] [stderr]     |          ----^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmrs` (lib) generated 16 warnings (run `cargo fix --lib -p jvmrs` to apply 7 suggestions)
[INFO] [stderr] warning: `jvmrs` (lib test) generated 26 warnings (16 duplicates) (run `cargo fix --lib -p jvmrs --tests` to apply 10 suggestions)
[INFO] [stderr] warning: unused imports: `DebugConfig` and `JvmDebugger`
[INFO] [stderr]  --> src/tests.rs:8:24
[INFO] [stderr]   |
[INFO] [stderr] 8 |     use crate::debug::{DebugConfig, JvmDebugger};
[INFO] [stderr]   |                        ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `to_class_loading_error`, `to_parse_error`, and `to_runtime_error`
[INFO] [stderr]   --> src/tests.rs:10:38
[INFO] [stderr]    |
[INFO] [stderr] 10 |         ClassLoadingError, JvmError, to_class_loading_error, to_parse_error, to_runtime_error,
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HeapArray`, `Monitor`, and `StackFrame`
[INFO] [stderr]   --> src/tests.rs:12:31
[INFO] [stderr]    |
[INFO] [stderr] 12 |     use crate::memory::{Heap, HeapArray, Monitor, StackFrame, Value};
[INFO] [stderr]    |                               ^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `output_path`
[INFO] [stderr]    --> src/main.rs:490:17
[INFO] [stderr]     |
[INFO] [stderr] 490 |     if let Some(ref output_path) = wasm_output {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_path`
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ArenaSlot` is never used
[INFO] [stderr]   --> src/allocator.rs:14:6
[INFO] [stderr]    |
[INFO] [stderr] 14 | enum ArenaSlot {
[INFO] [stderr]    |      ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ArenaAllocator` is never constructed
[INFO] [stderr]   --> src/allocator.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct ArenaAllocator {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/allocator.rs:37:11
[INFO] [stderr]     |
[INFO] [stderr]  35 | impl ArenaAllocator {
[INFO] [stderr]     | ------------------- associated items in this implementation
[INFO] [stderr]  36 |     /// Initial capacity (number of object slots)
[INFO] [stderr]  37 |     const INITIAL_CAPACITY: usize = 256;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  40 |     const GROWTH_FACTOR: f64 = 1.5;
[INFO] [stderr]     |           ^^^^^^^^^^^^^
[INFO] [stderr]  41 |
[INFO] [stderr]  42 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  51 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  61 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  91 |     fn addr_to_index(&self, addr: u32) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  96 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 105 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 114 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 |     pub fn iter_objects(&self) -> impl Iterator<Item = (u32, &HeapObject)> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 141 |     pub fn object_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ArrayArena` is never constructed
[INFO] [stderr]    --> src/allocator.rs:157:12
[INFO] [stderr]     |
[INFO] [stderr] 157 | pub struct ArrayArena {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/allocator.rs:164:11
[INFO] [stderr]     |
[INFO] [stderr] 163 | impl ArrayArena {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] 164 |     const INITIAL_CAPACITY: usize = 128;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 165 |
[INFO] [stderr] 166 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 174 |     pub fn allocate(&mut self, array: HeapArray) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 191 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 198 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 205 |     pub fn free_slot(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 213 |     pub fn iter_arrays(&self) -> impl Iterator<Item = (u32, &HeapArray)> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 222 |     pub fn array_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `default_cache_dir` is never used
[INFO] [stderr]   --> src/class_cache.rs:52:8
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub fn default_cache_dir() -> PathBuf {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `minor_version`, `access_flags`, and `fields` are never read
[INFO] [stderr]   --> src/class_file.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct ClassFile {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 13 |     pub magic: u32,
[INFO] [stderr] 14 |     pub minor_version: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |     pub access_flags: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 21 |     pub fields: Vec<FieldInfo>,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ClassFile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `reference_kind` is never read
[INFO] [stderr]   --> src/class_file.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 66 |     ConstantMethodHandle {
[INFO] [stderr]    |     -------------------- field in this variant
[INFO] [stderr] 67 |         reference_kind: u8,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `descriptor_index` is never read
[INFO] [stderr]   --> src/class_file.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 70 |     ConstantMethodType {
[INFO] [stderr]    |     ------------------ field in this variant
[INFO] [stderr] 71 |         descriptor_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ConstantPoolEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `access_flags`, `name_index`, `descriptor_index`, and `attributes` are never read
[INFO] [stderr]   --> src/class_file.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub struct FieldInfo {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 82 |     pub access_flags: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 83 |     pub name_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 84 |     pub descriptor_index: u16,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 85 |     pub attributes: Vec<AttributeInfo>,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `InvalidAttributeLength` is never constructed
[INFO] [stderr]    --> src/class_file.rs:110:5
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub enum ParseError {
[INFO] [stderr]     |          ---------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 110 |     InvalidAttributeLength,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/class_loader.rs:52:12
[INFO] [stderr]     |
[INFO] [stderr]  30 | impl ClassLoader {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  52 |     pub fn metrics(&self) -> &ClassLoadMetrics {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  57 |     pub fn with_cache_dir(mut self, cache_dir: PathBuf) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 178 |     pub fn get_loaded_classes(&self) -> Vec<&String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 183 |     pub fn add_classpath(&mut self, path: PathBuf) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 188 |     pub fn get_classpath(&self) -> &[PathBuf] {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 193 |     pub fn clear_cache(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 198 |     pub fn reload_class(&mut self, class_name: &str) -> Result<(), JvmError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_system_classpath` is never used
[INFO] [stderr]    --> src/class_loader.rs:227:8
[INFO] [stderr]     |
[INFO] [stderr] 227 | pub fn get_system_classpath() -> Vec<PathBuf> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `MemoryError` is never constructed
[INFO] [stderr]   --> src/error.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub enum JvmError {
[INFO] [stderr]    |          -------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 13 |     MemoryError(MemoryError),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `JvmError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]   --> src/error.rs:52:5
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub enum ParseError {
[INFO] [stderr]    |          ---------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 52 |     UnsupportedVersion(u16, u16),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 53 |     /// Invalid constant pool tag
[INFO] [stderr] 54 |     InvalidConstantPoolTag(u8),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 55 |     /// Invalid attribute length
[INFO] [stderr] 56 |     InvalidAttributeLength,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 57 |     /// Invalid UTF-8 string in constant pool
[INFO] [stderr] 58 |     InvalidUtf8String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 59 |     /// Invalid method descriptor
[INFO] [stderr] 60 |     InvalidMethodDescriptor(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 61 |     /// Invalid field descriptor
[INFO] [stderr] 62 |     InvalidFieldDescriptor(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 63 |     /// Invalid opcode
[INFO] [stderr] 64 |     InvalidOpcode(u8),
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 65 |     /// Invalid bytecode
[INFO] [stderr] 66 |     InvalidBytecode(String),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ParseError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub enum RuntimeError {
[INFO] [stderr]     |          ------------ variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 112 |     StackOverflow,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 |     ClassNotFound(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 128 |     InvalidTypeConversion(String, String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 132 |     ArithmeticOverflow,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 136 |     InvalidArrayType(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 137 |     /// Invalid array length
[INFO] [stderr] 138 |     InvalidArrayLength(usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 146 |     IllegalState(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 150 |     InvalidOpcode(u8),
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 151 |     /// Exception thrown
[INFO] [stderr] 152 |     ExceptionThrown(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     ArrayStoreException,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 160 |     IllegalAccessException(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 161 |     /// Instantiation exception
[INFO] [stderr] 162 |     InstantiationException(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 163 |     /// String index out of bounds
[INFO] [stderr] 164 |     StringIndexOutOfBounds(usize, usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RuntimeError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:242:5
[INFO] [stderr]     |
[INFO] [stderr] 230 | pub enum MemoryError {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 242 |     HeapCorruption,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 243 |     /// Garbage collection failed
[INFO] [stderr] 244 |     GcError(String),
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 245 |     /// Memory limit exceeded
[INFO] [stderr] 246 |     MemoryLimitExceeded(usize),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 247 |     /// Invalid object header
[INFO] [stderr] 248 |     InvalidObjectHeader,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 249 |     /// Invalid array header
[INFO] [stderr] 250 |     InvalidArrayHeader,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 251 |     /// Memory allocation failed
[INFO] [stderr] 252 |     AllocationFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 258 |     ArrayIndexOutOfBounds(usize, usize), // index, length
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `MemoryError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/error.rs:312:5
[INFO] [stderr]     |
[INFO] [stderr] 306 | pub enum ClassLoadingError {
[INFO] [stderr]     |          ----------------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 312 |     ClassCircularityError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 316 |     UnsupportedClassVersion(String, u16, u16),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 317 |     /// Class verification failed
[INFO] [stderr] 318 |     VerificationFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 319 |     /// Linkage error
[INFO] [stderr] 320 |     LinkageError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 321 |     /// Illegal access error
[INFO] [stderr] 322 |     IllegalAccessError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 323 |     /// Instantiation error
[INFO] [stderr] 324 |     InstantiationError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 325 |     /// Class loader constraint violation
[INFO] [stderr] 326 |     ClassLoaderConstraintViolation(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ClassLoadingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `NativeLibraryNotFound`, `NativeLibraryLoadFailed`, and `UnsatisfiedLinkError` are never constructed
[INFO] [stderr]    --> src/error.rs:370:5
[INFO] [stderr]     |
[INFO] [stderr] 364 | pub enum NativeError {
[INFO] [stderr]     |          ----------- variants in this enum
[INFO] [stderr] ...
[INFO] [stderr] 370 |     NativeLibraryNotFound(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 371 |     /// Native library load failed
[INFO] [stderr] 372 |     NativeLibraryLoadFailed(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 373 |     /// Unsatisfied link error
[INFO] [stderr] 374 |     UnsatisfiedLinkError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NativeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `JvmResult` is never used
[INFO] [stderr]    --> src/error.rs:403:10
[INFO] [stderr]     |
[INFO] [stderr] 403 | pub type JvmResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `InterpreterResult` is never used
[INFO] [stderr]    --> src/error.rs:406:10
[INFO] [stderr]     |
[INFO] [stderr] 406 | pub type InterpreterResult = Result<(), JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ClassFileResult` is never used
[INFO] [stderr]    --> src/error.rs:409:10
[INFO] [stderr]     |
[INFO] [stderr] 409 | pub type ClassFileResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `MemoryResult` is never used
[INFO] [stderr]    --> src/error.rs:412:10
[INFO] [stderr]     |
[INFO] [stderr] 412 | pub type MemoryResult<T> = Result<T, JvmError>;
[INFO] [stderr]     |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `to_runtime_error` is never used
[INFO] [stderr]    --> src/error.rs:415:8
[INFO] [stderr]     |
[INFO] [stderr] 415 | pub fn to_runtime_error<T: ToString>(msg: T) -> JvmError {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `to_parse_error` is never used
[INFO] [stderr]    --> src/error.rs:420:8
[INFO] [stderr]     |
[INFO] [stderr] 420 | pub fn to_parse_error<T: Into<ParseError>>(err: T) -> JvmError {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `to_memory_error` is never used
[INFO] [stderr]    --> src/error.rs:430:8
[INFO] [stderr]     |
[INFO] [stderr] 430 | pub fn to_memory_error<T: Into<MemoryError>>(err: T) -> JvmError {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Generation` is never used
[INFO] [stderr]   --> src/gc.rs:13:10
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub enum Generation {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GenObject` is never constructed
[INFO] [stderr]   --> src/gc.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | struct GenObject {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `GenerationalHeap` is never constructed
[INFO] [stderr]   --> src/gc.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub struct GenerationalHeap {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/gc.rs:57:15
[INFO] [stderr]     |
[INFO] [stderr]  56 | impl GenerationalHeap {
[INFO] [stderr]     | --------------------- associated items in this implementation
[INFO] [stderr]  57 |     pub const DEFAULT_PROMOTION_THRESHOLD: u8 = 8;
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]  58 |
[INFO] [stderr]  59 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  74 |     pub fn with_debugger(debugger: JvmDebugger) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     fn alloc_addr(&mut self) -> u32 {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     pub fn allocate(&mut self, class_name: String) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 117 |     pub fn allocate_string(&mut self, data: String) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 139 |     pub fn allocate_array(&mut self, array_type: HeapArray) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 145 |     fn get_gen_object(&self, addr: u32) -> Option<&GenObject> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 151 |     fn get_gen_object_mut(&mut self, addr: u32) -> Option<&mut GenObject> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 159 |     pub fn get_object(&self, addr: u32) -> Option<&HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn get_object_mut(&mut self, addr: u32) -> Option<&mut HeapObject> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 167 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 172 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 178 |     pub fn get_array(&self, addr: u32) -> Option<&HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 184 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 192 |     fn mark_from_roots(&mut self, addr: u32) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 205 |     fn collect_references(&self, addr: u32) -> Vec<u32> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 223 |     pub fn minor_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 278 |     pub fn major_gc(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 323 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 328 |     pub fn mark_object(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 335 |     pub fn unmark_all(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 346 |     pub fn object_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 350 |     pub fn array_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 354 |     pub fn memory_used(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 375 |     pub fn array_length(&self, addr: u32) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 391 |     pub fn array_get(&self, addr: u32, index: usize) -> Result<Value, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 436 |     pub fn array_set(&mut self, addr: u32, index: usize, value: Value) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 502 |     pub fn monitor_enter(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 520 |     pub fn monitor_exit(&mut self, addr: u32, thread_id: u32) -> Result<(), MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 536 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ScopedRoot` is never constructed
[INFO] [stderr]    --> src/gc.rs:557:12
[INFO] [stderr]     |
[INFO] [stderr] 557 | pub struct ScopedRoot {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `addr` are never used
[INFO] [stderr]    --> src/gc.rs:563:12
[INFO] [stderr]     |
[INFO] [stderr] 562 | impl ScopedRoot {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] 563 |     pub fn new(addr: u32) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 573 |     pub fn addr(&self) -> u32 {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_roots` is never used
[INFO] [stderr]    --> src/gc.rs:590:8
[INFO] [stderr]     |
[INFO] [stderr] 590 | pub fn get_roots() -> Vec<u32> {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_root` is never used
[INFO] [stderr]    --> src/gc.rs:595:8
[INFO] [stderr]     |
[INFO] [stderr] 595 | pub fn add_root(addr: u32) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `remove_root` is never used
[INFO] [stderr]    --> src/gc.rs:602:8
[INFO] [stderr]     |
[INFO] [stderr] 602 | pub fn remove_root(addr: u32) {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_debugger` is never used
[INFO] [stderr]   --> src/memory/mod.rs:56:12
[INFO] [stderr]    |
[INFO] [stderr] 39 | impl Memory {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 56 |     pub fn set_debugger(&mut self, debugger: JvmDebugger) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `marked` is never read
[INFO] [stderr]   --> src/memory/heap.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct Heap {
[INFO] [stderr]    |            ---- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 20 |     marked: HashSet<u32>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/memory/heap.rs:129:12
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl Heap {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 129 |     pub fn get_string_data(&self, addr: u32) -> Option<&String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 139 |     pub fn is_string(&self, addr: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub fn get_array_mut(&mut self, addr: u32) -> Option<&mut HeapArray> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 154 |     pub fn mark(&mut self, addr: u32) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 161 |     pub fn unmark_all(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 168 |     pub fn collect_garbage(&mut self, roots: &[u32]) -> Result<usize, MemoryError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 |     pub fn memory_used(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 460 |     pub fn owns_monitor(&self, addr: u32, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `marked` is never read
[INFO] [stderr]   --> src/memory/heap_object.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct HeapObject {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 13 |     pub marked: bool,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `HeapObject` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_owned_by`, `wait`, `notify`, and `notify_all` are never used
[INFO] [stderr]    --> src/memory/monitor.rs:58:12
[INFO] [stderr]     |
[INFO] [stderr]  11 | impl Monitor {
[INFO] [stderr]     | ------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  58 |     pub fn is_owned_by(&self, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  62 |     pub fn wait(&mut self, thread_id: u32) -> bool {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  86 |     pub fn notify(&mut self) -> bool {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 101 |     pub fn notify_all(&mut self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `push_frame`, `pop_frame`, `current_frame`, `current_frame_mut`, and `depth` are never used
[INFO] [stderr]   --> src/memory/stack.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl JVMStack {
[INFO] [stderr]    | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |     pub fn push_frame(&mut self, frame: StackFrame) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn pop_frame(&mut self) -> Option<StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn current_frame(&self) -> Option<&StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn current_frame_mut(&mut self) -> Option<&mut StackFrame> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 |     pub fn depth(&self) -> usize {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_reference` is never used
[INFO] [stderr]   --> src/memory/value.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | impl Value {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn is_reference(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `type_name` and `elements` are never read
[INFO] [stderr]   --> src/annotations.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct Annotation {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 12 |     pub type_name: String,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 13 |     pub elements: HashMap<String, ElementValue>,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Annotation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:19:14
[INFO] [stderr]    |
[INFO] [stderr] 19 |     ConstInt(i32),
[INFO] [stderr]    |     -------- ^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 19 -     ConstInt(i32),
[INFO] [stderr] 19 +     ConstInt(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:23:17
[INFO] [stderr]    |
[INFO] [stderr] 23 |     ConstString(String),
[INFO] [stderr]    |     ----------- ^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 23 -     ConstString(String),
[INFO] [stderr] 23 +     ConstString(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/annotations.rs:27:11
[INFO] [stderr]    |
[INFO] [stderr] 27 |     Array(Vec<ElementValue>),
[INFO] [stderr]    |     ----- ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 27 -     Array(Vec<ElementValue>),
[INFO] [stderr] 27 +     Array(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variants `ConstLong`, `ConstFloat`, `ConstDouble`, `Enum`, `Class`, and `Annotation` are never constructed
[INFO] [stderr]   --> src/annotations.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub enum ElementValue {
[INFO] [stderr]    |          ------------ variants in this enum
[INFO] [stderr] 19 |     ConstInt(i32),
[INFO] [stderr] 20 |     ConstLong(i64),
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 21 |     ConstFloat(f32),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 22 |     ConstDouble(f64),
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 23 |     ConstString(String),
[INFO] [stderr] 24 |     Enum(String, String),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 25 |     Class(String),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 26 |     Annotation(Annotation),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ElementValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_signature` is never used
[INFO] [stderr]    --> src/annotations.rs:133:8
[INFO] [stderr]     |
[INFO] [stderr] 133 | pub fn get_signature(class: &ClassFile, attrs: &[AttributeInfo]) -> Option<String> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_class_signature` is never used
[INFO] [stderr]    --> src/annotations.rs:150:12
[INFO] [stderr]     |
[INFO] [stderr] 143 | impl ClassFile {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub fn get_class_signature(&self) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_annotations` and `get_signature_attr` are never used
[INFO] [stderr]    --> src/annotations.rs:157:12
[INFO] [stderr]     |
[INFO] [stderr] 155 | impl MethodInfo {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] 156 |     /// Get method-level annotations
[INFO] [stderr] 157 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     pub fn get_signature_attr(&self, class: &ClassFile) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_annotations` is never used
[INFO] [stderr]    --> src/annotations.rs:169:12
[INFO] [stderr]     |
[INFO] [stderr] 167 | impl FieldInfo {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] 168 |     /// Get field-level annotations
[INFO] [stderr] 169 |     pub fn get_annotations(&self, class: &ClassFile) -> Vec<Annotation> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `string_cache`, `exception_handlers`, `current_exception`, and `reflection_api` are never read
[INFO] [stderr]   --> src/interpreter/mod.rs:41:16
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub struct Interpreter {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub(crate) string_cache: HashMap<u32, String>,
[INFO] [stderr]    |                ^^^^^^^^^^^^
[INFO] [stderr] 42 |     pub(crate) exception_handlers: Vec<ExceptionHandler>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 43 |     pub(crate) current_exception: Option<RuntimeError>,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub(crate) reflection_api: ReflectionApi,
[INFO] [stderr]    |                ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/interpreter/mod.rs:516:12
[INFO] [stderr]     |
[INFO] [stderr]  65 | impl Interpreter {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 516 |     pub fn invoke_method(
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 562 |     fn build_descriptor_for_args(args: &[Value]) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 595 |     pub fn is_jit_enabled(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 610 |     pub fn jit_manager(&mut self) -> Option<&mut JitManager> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 615 |     pub fn load_class<P: AsRef<Path>>(&mut self, path: P) -> Result<(), JvmError> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 632 |     pub fn get_class(&self, name: &str) -> Option<&ClassFile> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 637 |     pub fn get_reflection_api(&self) -> &ReflectionApi {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 642 |     pub fn get_class_reflection(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNIEnv` is never constructed
[INFO] [stderr]   --> src/jni.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct JNIEnv {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jobject` is never used
[INFO] [stderr]   --> src/jni.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type jobject = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jclass` is never used
[INFO] [stderr]   --> src/jni.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub type jclass = *mut c_void;
[INFO] [stderr]    |          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jmethodID` is never used
[INFO] [stderr]   --> src/jni.rs:24:10
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub type jmethodID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `jfieldID` is never used
[INFO] [stderr]   --> src/jni.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub type jfieldID = *mut c_void;
[INFO] [stderr]    |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNINativeMethod` is never constructed
[INFO] [stderr]   --> src/jni.rs:31:12
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct JNINativeMethod {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `jni_natives` is never used
[INFO] [stderr]   --> src/jni.rs:38:4
[INFO] [stderr]    |
[INFO] [stderr] 38 | fn jni_natives() -> &'static RwLock<HashMap<(String, String, String), usize>> {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `register_natives` is never used
[INFO] [stderr]   --> src/jni.rs:45:8
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub fn register_natives(class_name: &str, methods: &[JNINativeMethod]) -> Result<(), String> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_native` is never used
[INFO] [stderr]   --> src/jni.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 | pub fn find_native(class_name: &str, name: &str, signature: &str) -> Option<*mut c_void> {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unregister_natives` is never used
[INFO] [stderr]   --> src/jni.rs:80:8
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub fn unregister_natives(class_name: &str) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_1` is never used
[INFO] [stderr]  --> src/native.rs:7:11
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub const JNI_VERSION_1_1: i32 = 0x00010001;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_2` is never used
[INFO] [stderr]  --> src/native.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub const JNI_VERSION_1_2: i32 = 0x00010002;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_4` is never used
[INFO] [stderr]  --> src/native.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const JNI_VERSION_1_4: i32 = 0x00010004;
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_6` is never used
[INFO] [stderr]   --> src/native.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub const JNI_VERSION_1_6: i32 = 0x00010006;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JNI_VERSION_1_8` is never used
[INFO] [stderr]   --> src/native.rs:11:11
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const JNI_VERSION_1_8: i32 = 0x00010008;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `JNINativeInterface_` is never constructed
[INFO] [stderr]   --> src/native.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct JNINativeInterface_ {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `JNINativeMethod` is never used
[INFO] [stderr]   --> src/native.rs:30:10
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub type JNINativeMethod = unsafe extern "C" fn(*mut c_void, *mut c_void, *mut *mut jvalue);
[INFO] [stderr]    |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: union `jvalue` is never used
[INFO] [stderr]   --> src/native.rs:34:11
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub union jvalue {
[INFO] [stderr]    |           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `name` is never used
[INFO] [stderr]   --> src/native.rs:55:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub trait NativeMethod: Send + Sync {
[INFO] [stderr]    |           ------------ method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 55 |     fn name(&self) -> &str;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/native.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct SimpleNativeMethod {
[INFO] [stderr]    |            ------------------ field in this struct
[INFO] [stderr] 60 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_native` is never used
[INFO] [stderr]    --> src/native.rs:130:12
[INFO] [stderr]     |
[INFO] [stderr]  99 | impl NativeRegistry {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 130 |     pub fn is_native(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `value_to_jvalue` is never used
[INFO] [stderr]    --> src/native.rs:144:8
[INFO] [stderr]     |
[INFO] [stderr] 144 | pub fn value_to_jvalue(value: Value) -> jvalue {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `jvalue_to_value` is never used
[INFO] [stderr]    --> src/native.rs:170:8
[INFO] [stderr]     |
[INFO] [stderr] 170 | pub fn jvalue_to_value(jvalue: jvalue) -> Value {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FieldReflection` is never constructed
[INFO] [stderr]  --> src/reflection.rs:6:12
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct FieldReflection {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MethodReflection` is never constructed
[INFO] [stderr]   --> src/reflection.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct MethodReflection {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ConstructorReflection` is never constructed
[INFO] [stderr]   --> src/reflection.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct ConstructorReflection {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ClassReflection` is never constructed
[INFO] [stderr]   --> src/reflection.rs:31:12
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct ClassReflection {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `descriptor_to_type` is never used
[INFO] [stderr]   --> src/reflection.rs:42:4
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn descriptor_to_type(descriptor: &str) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `class_to_reflection` is never used
[INFO] [stderr]   --> src/reflection.rs:75:8
[INFO] [stderr]    |
[INFO] [stderr] 75 | pub fn class_to_reflection(class: &ClassFile) -> ClassReflection {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_method_params` is never used
[INFO] [stderr]    --> src/reflection.rs:139:4
[INFO] [stderr]     |
[INFO] [stderr] 139 | fn parse_method_params(descriptor: &str) -> Vec<String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_return_type` is never used
[INFO] [stderr]    --> src/reflection.rs:212:4
[INFO] [stderr]     |
[INFO] [stderr] 212 | fn parse_return_type(descriptor: &str) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/reflection.rs:232:12
[INFO] [stderr]     |
[INFO] [stderr] 223 | impl ReflectionApi {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 232 |     pub fn get_class(&self, class_name: &str) -> Option<ClassReflection> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 245 |     pub fn get_fields(&self, class_name: &str) -> Vec<FieldReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 261 |     pub fn get_methods(&self, class_name: &str) -> Vec<MethodReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 277 |     pub fn get_constructors(&self, class_name: &str) -> Vec<ConstructorReflection> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 293 |     pub fn get_super_class(&self, class_name: &str) -> Option<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 309 |     pub fn get_interfaces(&self, class_name: &str) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 325 |     pub fn get_class_modifiers(&self, class_name: &str) -> u16 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 341 |     pub fn is_interface(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 347 |     pub fn is_abstract(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 353 |     pub fn is_public(&self, class_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 359 |     pub fn is_field_public(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 370 |     pub fn is_field_static(&self, class_name: &str, field_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 381 |     pub fn is_method_public(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 392 |     pub fn is_method_static(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 413 |     pub fn get_field_value(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 423 |     pub fn set_field_value(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 436 |     pub fn invoke_method(
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PUBLIC` is never used
[INFO] [stderr]    --> src/reflection.rs:460:15
[INFO] [stderr]     |
[INFO] [stderr] 460 |     pub const PUBLIC: u16 = 0x0001;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PRIVATE` is never used
[INFO] [stderr]    --> src/reflection.rs:461:15
[INFO] [stderr]     |
[INFO] [stderr] 461 |     pub const PRIVATE: u16 = 0x0002;
[INFO] [stderr]     |               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PROTECTED` is never used
[INFO] [stderr]    --> src/reflection.rs:462:15
[INFO] [stderr]     |
[INFO] [stderr] 462 |     pub const PROTECTED: u16 = 0x0004;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `STATIC` is never used
[INFO] [stderr]    --> src/reflection.rs:463:15
[INFO] [stderr]     |
[INFO] [stderr] 463 |     pub const STATIC: u16 = 0x0008;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FINAL` is never used
[INFO] [stderr]    --> src/reflection.rs:464:15
[INFO] [stderr]     |
[INFO] [stderr] 464 |     pub const FINAL: u16 = 0x0010;
[INFO] [stderr]     |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SYNCHRONIZED` is never used
[INFO] [stderr]    --> src/reflection.rs:465:15
[INFO] [stderr]     |
[INFO] [stderr] 465 |     pub const SYNCHRONIZED: u16 = 0x0020;
[INFO] [stderr]     |               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `VOLATILE` is never used
[INFO] [stderr]    --> src/reflection.rs:466:15
[INFO] [stderr]     |
[INFO] [stderr] 466 |     pub const VOLATILE: u16 = 0x0040;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TRANSIENT` is never used
[INFO] [stderr]    --> src/reflection.rs:467:15
[INFO] [stderr]     |
[INFO] [stderr] 467 |     pub const TRANSIENT: u16 = 0x0080;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `NATIVE` is never used
[INFO] [stderr]    --> src/reflection.rs:468:15
[INFO] [stderr]     |
[INFO] [stderr] 468 |     pub const NATIVE: u16 = 0x0100;
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `INTERFACE` is never used
[INFO] [stderr]    --> src/reflection.rs:469:15
[INFO] [stderr]     |
[INFO] [stderr] 469 |     pub const INTERFACE: u16 = 0x0200;
[INFO] [stderr]     |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ABSTRACT` is never used
[INFO] [stderr]    --> src/reflection.rs:470:15
[INFO] [stderr]     |
[INFO] [stderr] 470 |     pub const ABSTRACT: u16 = 0x0400;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `STRICTFP` is never used
[INFO] [stderr]    --> src/reflection.rs:471:15
[INFO] [stderr]     |
[INFO] [stderr] 471 |     pub const STRICTFP: u16 = 0x0800;
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_serializable` is never used
[INFO] [stderr]   --> src/serialization.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn is_serializable(_class_name: &str) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `export_html_fragment` is never used
[INFO] [stderr]   --> src/visualization.rs:48:8
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub fn export_html_fragment(frames: &[StackFrame]) -> String {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `html_escape` is never used
[INFO] [stderr]   --> src/visualization.rs:62:4
[INFO] [stderr]    |
[INFO] [stderr] 62 | fn html_escape(s: &str) -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `last_compiled` is never read
[INFO] [stderr]   --> src/jit.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub struct MethodProfile {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub last_compiled: Option<Instant>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MethodProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `max_method_size` is never read
[INFO] [stderr]   --> src/jit.rs:96:9
[INFO] [stderr]    |
[INFO] [stderr] 88 | pub struct TieredCompilationConfig {
[INFO] [stderr]    |            ----------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 96 |     pub max_method_size: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TieredCompilationConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IrGenerationError` is never constructed
[INFO] [stderr]    --> src/jit.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub enum JitError {
[INFO] [stderr]     |          -------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 123 |     IrGenerationError(String),
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `JitError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `level` are never read
[INFO] [stderr]    --> src/jit.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 147 | pub struct CompiledCode {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr] 148 |     /// Function name
[INFO] [stderr] 149 |     pub name: String,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 153 |     pub level: CompilationLevel,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `CompiledCode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `config` and `set_config` are never used
[INFO] [stderr]    --> src/jit.rs:331:12
[INFO] [stderr]     |
[INFO] [stderr] 180 | impl CraneliftJitCompiler {
[INFO] [stderr]     | ------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 331 |     pub fn config(&self) -> &TieredCompilationConfig {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 336 |     pub fn set_config(&mut self, config: TieredCompilationConfig) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `link_executable` is never used
[INFO] [stderr]    --> src/jit.rs:366:12
[INFO] [stderr]     |
[INFO] [stderr] 354 | impl AotCompiler {
[INFO] [stderr]     | ---------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 366 |     pub fn link_executable(objects: &[PathBuf], output_path: &Path) -> JitResult<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_or_compile_method` and `is_compiled` are never used
[INFO] [stderr]    --> src/jit.rs:589:12
[INFO] [stderr]     |
[INFO] [stderr] 569 | impl JitManager {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 589 |     pub fn get_or_compile_method(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 631 |     pub fn is_compiled(&self, class_name: &str, method_name: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LlvmIrGenerator` is never constructed
[INFO] [stderr]    --> src/jit.rs:546:16
[INFO] [stderr]     |
[INFO] [stderr] 546 |     pub struct LlvmIrGenerator {}
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/jit.rs:549:16
[INFO] [stderr]     |
[INFO] [stderr] 548 |     impl LlvmIrGenerator {
[INFO] [stderr]     |     -------------------- associated function in this implementation
[INFO] [stderr] 549 |         pub fn new(_module_name: &str) -> Result<Self, String> {
[INFO] [stderr]     |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `trace_classes`, `trace_methods`, and `max_stack_frames` are never read
[INFO] [stderr]   --> src/debug.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct DebugConfig {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 13 |     pub trace_classes: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 14 |     /// Enable method entry/exit logging
[INFO] [stderr] 15 |     pub trace_methods: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 16 |     /// Maximum number of stack frames to log (None for all)
[INFO] [stderr] 17 |     pub max_stack_frames: Option<usize>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DebugConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/debug.rs:52:12
[INFO] [stderr]     |
[INFO] [stderr]  42 | impl JvmDebugger {
[INFO] [stderr]     | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  52 |     pub fn log_method_entry(&self, class_name: &str, method_name: &str, method_descriptor: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  62 |     pub fn log_method_exit(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 135 |     pub fn log_class_loaded(&self, class_name: &str, source: &str) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 152 |     pub fn log_memory_access(&self, address: u32, operation: &str, value: Option<&Value>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 162 |     pub fn log_exception(&self, exception: &str, handler_pc: Option<usize>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 170 |     pub fn log_gc(&self, freed_objects: usize, freed_bytes: usize) {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 387 |     pub fn instruction_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 392 |     pub fn reset_instruction_count(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `rng_seed`, `fixed_timestamp_ns`, and `max_pause_ns` are never read
[INFO] [stderr]   --> src/deterministic.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct DeterministicConfig {
[INFO] [stderr]    |            ------------------- fields in this struct
[INFO] [stderr] 11 |     /// Fixed seed for any RNG (0 = use system time when disabled)
[INFO] [stderr] 12 |     pub rng_seed: u64,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 13 |     /// Use fixed "epoch" timestamp instead of actual time
[INFO] [stderr] 14 |     pub fixed_timestamp_ns: Option<u64>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 15 |     /// Target max pause time in ns (for real-time / HFT; advisory)
[INFO] [stderr] 16 |     pub max_pause_ns: Option<u64>,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DeterministicConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `blockchain`, `realtime`, and `hft` are never used
[INFO] [stderr]   --> src/deterministic.rs:31:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | impl DeterministicConfig {
[INFO] [stderr]    | ------------------------ associated functions in this implementation
[INFO] [stderr] 30 |     /// Preset for blockchain / smart contract execution
[INFO] [stderr] 31 |     pub fn blockchain() -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 40 |     pub fn realtime(max_pause_ns: u64) -> Self {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49 |     pub fn hft() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DeterministicMode` is never constructed
[INFO] [stderr]   --> src/deterministic.rs:55:12
[INFO] [stderr]    |
[INFO] [stderr] 55 | pub struct DeterministicMode {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `enabled`, `set_enabled`, `rng_seed`, and `timestamp_ns` are never used
[INFO] [stderr]   --> src/deterministic.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 60 | impl DeterministicMode {
[INFO] [stderr]    | ---------------------- associated items in this implementation
[INFO] [stderr] 61 |     pub fn new(config: DeterministicConfig) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 68 |     pub fn enabled(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 77 |     pub fn rng_seed(&self) -> u64 {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub fn timestamp_ns(&self) -> u64 {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `with_max_samples`, `set_enabled`, `method_counts`, `method_time_ns`, and `hotspots` are never used
[INFO] [stderr]    --> src/profiler.rs:45:12
[INFO] [stderr]     |
[INFO] [stderr]  33 | impl Profiler {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  45 |     pub fn with_max_samples(max_samples: usize) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  51 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |     pub fn method_counts(&self) -> HashMap<String, u64> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 105 |     pub fn method_time_ns(&self) -> HashMap<String, u64> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |     pub fn hotspots(&self, top_n: usize) -> Vec<(String, u64, u64)> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `with_capacity`, `is_enabled`, and `clear` are never used
[INFO] [stderr]    --> src/trace.rs:36:12
[INFO] [stderr]     |
[INFO] [stderr]  27 | impl TraceRecorder {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  36 |     pub fn with_capacity(max_steps: usize) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  48 |     pub fn is_enabled(&self) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |     pub fn clear(&mut self) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `target_class`, `target_ref`, and `interceptor` are never read
[INFO] [stderr]   --> src/aop.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct Proxy {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr]  8 |     pub target_class: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]  9 |     pub target_ref: u32,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 10 |     pub interceptor: Option<String>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Proxy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: enum `AdviceKind` is never used
[INFO] [stderr]   --> src/aop.rs:15:10
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub enum AdviceKind {
[INFO] [stderr]    |          ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Pointcut` is never constructed
[INFO] [stderr]   --> src/aop.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct Pointcut {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AopRegistry` is never constructed
[INFO] [stderr]   --> src/aop.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub struct AopRegistry {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `add_advice`, and `matches` are never used
[INFO] [stderr]   --> src/aop.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 34 | impl AopRegistry {
[INFO] [stderr]    | ---------------- associated items in this implementation
[INFO] [stderr] 35 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub fn add_advice(&mut self, pointcut: Pointcut, kind: AdviceKind) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub fn matches(&self, class_name: &str, method_name: &str) -> Option<AdviceKind> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `K8sOperatorConfig` is never constructed
[INFO] [stderr]  --> src/cloud.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct K8sOperatorConfig {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DistributedObjectRef` is never constructed
[INFO] [stderr]   --> src/cloud.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct DistributedObjectRef {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `JavaExtension` is never used
[INFO] [stderr]   --> src/extensions.rs:35:11
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub trait JavaExtension: Send + Sync {
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `NativeCallback` is never used
[INFO] [stderr]   --> src/extensions.rs:51:6
[INFO] [stderr]    |
[INFO] [stderr] 51 | type NativeCallback = Arc<dyn Fn(&[Value]) -> Result<Value, String> + Send + Sync>;
[INFO] [stderr]    |      ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ExtensionRegistry` is never constructed
[INFO] [stderr]   --> src/extensions.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub struct ExtensionRegistry {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `register_native`, `has_native`, `invoke_native`, `load`, and `loaded_extensions` are never used
[INFO] [stderr]    --> src/extensions.rs:60:12
[INFO] [stderr]     |
[INFO] [stderr]  59 | impl ExtensionRegistry {
[INFO] [stderr]     | ---------------------- associated items in this implementation
[INFO] [stderr]  60 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  68 |     pub fn register_native(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  80 |     pub fn has_native(&self, key: &str) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  85 |     pub fn invoke_native(&self, key: &str, args: &[Value]) -> Result<Value, String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  97 |     pub fn load(&self, ext: &dyn JavaExtension) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 |     pub fn loaded_extensions(&self) -> Vec<String> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `GLOBAL_REGISTRY` is never used
[INFO] [stderr]    --> src/extensions.rs:134:8
[INFO] [stderr]     |
[INFO] [stderr] 134 | static GLOBAL_REGISTRY: OnceLock<RwLock<ExtensionRegistry>> = OnceLock::new();
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `global` is never used
[INFO] [stderr]    --> src/extensions.rs:138:12
[INFO] [stderr]     |
[INFO] [stderr] 136 | impl ExtensionRegistry {
[INFO] [stderr]     | ---------------------- associated function in this implementation
[INFO] [stderr] 137 |     /// Global extension registry (used by Interpreter when interop is enabled)
[INFO] [stderr] 138 |     pub fn global() -> &'static RwLock<ExtensionRegistry> {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `HotReloadManager` is never constructed
[INFO] [stderr]   --> src/hot_reload.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct HotReloadManager {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set_enabled`, `register_reloadable`, `class_file_changed`, `record_class_loaded`, and `replace_method` are never used
[INFO] [stderr]   --> src/hot_reload.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl HotReloadManager {
[INFO] [stderr]    | --------------------- associated items in this implementation
[INFO] [stderr] 18 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     pub fn register_reloadable(&mut self, class: &str, _method: &str) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn class_file_changed(&self, path: &Path) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 62 |     pub fn record_class_loaded(&mut self, class_name: &str, path: &Path) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub fn replace_method(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `stack_overflow_check` is never read
[INFO] [stderr]   --> src/security.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct SecurityConfig {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     pub stack_overflow_check: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SecurityConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `check_stack_overflow`, `violation_count`, and `config` are never used
[INFO] [stderr]    --> src/security.rs:77:12
[INFO] [stderr]     |
[INFO] [stderr]  34 | impl Sanitizer {
[INFO] [stderr]     | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  77 |     pub fn check_stack_overflow(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  96 |     pub fn violation_count(&self) -> u64 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |     pub fn config(&self) -> &SecurityConfig {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `jvmrs` (bin "jvmrs" test) generated 162 warnings (24 duplicates) (run `cargo fix --bin "jvmrs" -p jvmrs --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/jvmrs-62946a420b5a778c)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test interpreter::test_invokedynamic::test_invokedynamic_string_concat ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_d_ops ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_fcmpl ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_l_ops ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_goto ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_lcmp ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_goto_w ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_jsr_w ... ok
[INFO] [stdout] test interpreter::tests::test_comparison_fcmp_dcmp ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_acmpeq ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_f_ops ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_cond ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_icmp ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_acmpne ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_lookupswitch ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_tableswitch ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_d2x ... ok
[INFO] [stdout] test jit::tests::test_method_profile ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_ifnull_ifnonnull ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_f2x ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_i2x ... ok
[INFO] [stdout] test jit::tests::test_aot_compiler_creation ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_jsr_ret ... ok
[INFO] [stdout] test interpreter::tests::test_stack_dup2_x2 ... ok
[INFO] [stdout] test interpreter::tests::test_stack_pop2 ... ok
[INFO] [stdout] test jit::tests::test_compilation_level_ordering ... ok
[INFO] [stdout] test jit::tests::test_jit_compiler_creation ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_l2x ... ok
[INFO] [stdout] test jit::tests::test_jit_manager_creation ... ok
[INFO] [stdout] test jit::tests::test_tiered_config_default ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/jvmrs-135b6bb4045d5ebd)
[INFO] [stdout] 
[INFO] [stdout] running 68 tests
[INFO] [stdout] test interpreter::test_invokedynamic::test_invokedynamic_string_concat ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_d_ops ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_fcmpl ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_f_ops ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_goto ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_lcmp ... ok
[INFO] [stdout] test interpreter::tests::test_arithmetic_l_ops ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_acmpeq ... ok
[INFO] [stdout] test interpreter::tests::test_comparison_fcmp_dcmp ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_goto_w ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_cond ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_acmpne ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_jsr_ret ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_if_icmp ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_lookupswitch ... ok
[INFO] [stdout] test jit::tests::test_aot_compiler_creation ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_d2x ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_jsr_w ... ok
[INFO] [stdout] test jit::tests::test_jit_manager_creation ... ok
[INFO] [stdout] test jit::tests::test_tiered_config_default ... ok
[INFO] [stdout] test jit::tests::test_jit_compiler_creation ... ok
[INFO] [stdout] test tests::tests::test_annotations_on_minimal_class ... ok
[INFO] [stdout] test tests::tests::test_class_file_incomplete_parse ... ok
[INFO] [stdout] test tests::tests::test_aop_create_proxy ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_f2x ... ok
[INFO] [stdout] test jit::tests::test_compilation_level_ordering ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_i2x ... ok
[INFO] [stdout] test tests::tests::test_class_file_invalid_constant_pool_tag ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_tableswitch ... ok
[INFO] [stdout] test tests::tests::test_class_loader_classpath_parsing_empty ... ok
[INFO] [stdout] test tests::tests::test_class_loader_classpath_parsing ... ok
[INFO] [stdout] test tests::tests::test_class_loader_classpath_parsing_whitespace ... ok
[INFO] [stdout] test tests::tests::test_descriptor_count_parameters ... ok
[INFO] [stdout] test tests::tests::test_class_file_valid_parse ... ok
[INFO] [stdout] test interpreter::tests::test_stack_pop2 ... ok
[INFO] [stdout] test jit::tests::test_method_profile ... ok
[INFO] [stdout] test interpreter::tests::test_conversion_l2x ... ok
[INFO] [stdout] test tests::tests::test_class_file_invalid_magic ... ok
[INFO] [stdout] test tests::tests::test_descriptor_malformed_inputs_do_not_panic ... ok
[INFO] [stdout] test interpreter::tests::test_control_flow_ifnull_ifnonnull ... ok
[INFO] [stdout] test tests::tests::test_error_display ... ok
[INFO] [stdout] test tests::tests::test_interpreter_conversions ... ok
[INFO] [stdout] test tests::tests::test_interpreter_arith_cmp_ops ... ok
[INFO] [stdout] test tests::tests::test_interpreter_array_ops ... ok
[INFO] [stdout] test tests::tests::test_interpreter_memory_access ... ok
[INFO] [stdout] test tests::tests::test_interpreter_memory_mut ... ok
[INFO] [stdout] test tests::tests::test_heap_array_length ... ok
[INFO] [stdout] test tests::tests::test_heap_array_get_set ... ok
[INFO] [stdout] test tests::tests::test_interpreter_reflection_errors ... ok
[INFO] [stdout] test tests::tests::test_interpreter_stack_ops ... ok
[INFO] [stdout] test tests::tests::test_is_serializable_class ... ok
[INFO] [stdout] test tests::tests::test_memory_static_fields ... ok
[INFO] [stdout] test tests::tests::test_serialize_all_value_types ... ok
[INFO] [stdout] test tests::tests::test_serialize_deserialize_object ... ok
[INFO] [stdout] test tests::tests::test_serialize_deserialize_object_with_string ... ok
[INFO] [stdout] test tests::tests::test_serialize_deserialize_value ... ok
[INFO] [stdout] test tests::tests::test_heap_get_field_set_field ... ok
[INFO] [stdout] test tests::tests::test_interpreter_arithmetic_ops ... ok
[INFO] [stdout] test tests::tests::test_descriptor_parse_params ... ok
[INFO] [stdout] test interpreter::tests::test_stack_dup2_x2 ... ok
[INFO] [stdout] test tests::tests::test_class_loader_load_minimal ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_get_object_class ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_get_set_field_value ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_test_ldc ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_minimal ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_run_test_get_static ... FAILED
[INFO] [stdout] test tests::tests::test_interpreter_new_instance ... FAILED
[INFO] [stdout] test tests::tests::test_reflection_api_delegates_to_interpreter ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_class_loader_load_minimal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_class_loader_load_minimal' (87) panicked at src/tests.rs:306:9:
[INFO] [stdout] load Minimal: Err(ClassLoadingError(NoClassDefFound("Minimal")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77ab76877 - jvmrs[bfce2348e999e753]::tests::tests::test_class_loader_load_minimal
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:306:9
[INFO] [stdout]   20:     0x61f77ab679c7 - jvmrs[bfce2348e999e753]::tests::tests::test_class_loader_load_minimal::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:299:40
[INFO] [stdout]   21:     0x61f77abe3706 - <jvmrs[bfce2348e999e753]::tests::tests::test_class_loader_load_minimal::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   43:     0x7e61037f9a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_get_object_class stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_get_object_class' (99) panicked at src/tests.rs:701:60:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: ClassLoadingError(NoClassDefFound("Minimal"))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77b1bc462 - core[a96a4c5c53f902a3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x61f77ab80318 - <core[a96a4c5c53f902a3]::result::Result<jvmrs[bfce2348e999e753]::memory::value::Value, jvmrs[bfce2348e999e753]::error::JvmError>>::unwrap
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x61f77ab80318 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_object_class
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:701:60
[INFO] [stdout]   22:     0x61f77ab67b77 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_object_class::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:692:43
[INFO] [stdout]   23:     0x61f77abe3946 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_object_class::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   45:     0x7e61037f9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_get_set_field_value stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_get_set_field_value' (100) panicked at src/tests.rs:716:60:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: ClassLoadingError(NoClassDefFound("Minimal"))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77b1bc462 - core[a96a4c5c53f902a3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x61f77ab8149c - <core[a96a4c5c53f902a3]::result::Result<jvmrs[bfce2348e999e753]::memory::value::Value, jvmrs[bfce2348e999e753]::error::JvmError>>::unwrap
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x61f77ab8149c - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_set_field_value
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:716:60
[INFO] [stdout]   22:     0x61f77ab67c37 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_set_field_value::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:707:46
[INFO] [stdout]   23:     0x61f77abe3a46 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_get_set_field_value::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   45:     0x7e61037f9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_test_ldc stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_test_ldc' (107) panicked at src/tests.rs:285:9:
[INFO] [stdout] run_main TestLdc failed: Err(ClassLoadingError(NoClassDefFound("TestLdc")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77ab764e6 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_ldc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:285:9
[INFO] [stdout]   20:     0x61f77ab67997 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_ldc::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:275:39
[INFO] [stdout]   21:     0x61f77abe36c6 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_ldc::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   43:     0x7e61037f9a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_minimal stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_minimal' (105) panicked at src/tests.rs:253:9:
[INFO] [stdout] run_main Minimal failed: Err(ClassLoadingError(NoClassDefFound("Minimal")))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77ab756e6 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_minimal
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:253:9
[INFO] [stdout]   20:     0x61f77ab678d7 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_minimal::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:243:38
[INFO] [stdout]   21:     0x61f77abe35c6 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_minimal::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   43:     0x7e61037f9a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_run_test_get_static stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_run_test_get_static' (106) panicked at src/tests.rs:267:9:
[INFO] [stdout] run_main TestGetStatic failed: Err(ClassLoadingError(NoClassDefFound("TestGetStatic")))
[INFO] [stdout] stack backtrace:
[INFO] [stderr] error: test failed, to rerun pass `--bin jvmrs`
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77ab81b26 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_get_static
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:267:9
[INFO] [stdout]   20:     0x61f77ab67c67 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_get_static::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:257:46
[INFO] [stdout]   21:     0x61f77abe3a86 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_run_test_get_static::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   43:     0x7e61037f9a64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_interpreter_new_instance stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_interpreter_new_instance' (103) panicked at src/tests.rs:686:60:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: ClassLoadingError(NoClassDefFound("Minimal"))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77b1bc462 - core[a96a4c5c53f902a3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x61f77ab76064 - <core[a96a4c5c53f902a3]::result::Result<jvmrs[bfce2348e999e753]::memory::value::Value, jvmrs[bfce2348e999e753]::error::JvmError>>::unwrap
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x61f77ab76064 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_new_instance
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:686:60
[INFO] [stdout]   22:     0x61f77ab67967 - jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_new_instance::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:677:39
[INFO] [stdout]   23:     0x61f77abe3686 - <jvmrs[bfce2348e999e753]::tests::tests::test_interpreter_new_instance::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   45:     0x7e61037f9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::tests::test_reflection_api_delegates_to_interpreter stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::tests::test_reflection_api_delegates_to_interpreter' (111) panicked at src/tests.rs:746:70:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: "Class loading error: No class definition found: Minimal"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x61f77b1a452a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x61f77b1a452a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x61f77b1a452a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x61f77b1bbf2a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x61f77b1bbf2a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x61f77b1a92c2 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x61f77b1a92c2 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x61f77b18238f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x61f77b18238f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x61f77b19c7c9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x61f77ac3ce2c - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x61f77ac3ce2c - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x61f77b19c982 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x61f77b19c982 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x61f77b182448 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x61f77b179659 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x61f77b18324d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x61f77b1bc71c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x61f77b1bc462 - core[a96a4c5c53f902a3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x61f77ab82266 - <core[a96a4c5c53f902a3]::result::Result<jvmrs[bfce2348e999e753]::memory::value::Value, alloc[c960326de6de28e6]::string::String>>::unwrap
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x61f77ab82266 - jvmrs[bfce2348e999e753]::tests::tests::test_reflection_api_delegates_to_interpreter
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:746:70
[INFO] [stdout]   22:     0x61f77ab67cf7 - jvmrs[bfce2348e999e753]::tests::tests::test_reflection_api_delegates_to_interpreter::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/tests.rs:735:54
[INFO] [stdout]   23:     0x61f77abe3b46 - <jvmrs[bfce2348e999e753]::tests::tests::test_reflection_api_delegates_to_interpreter::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x61f77ac30f0b - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x61f77ac30f0b - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x61f77ac3d8fb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x61f77ac3d8fb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x61f77ac3d8fb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x61f77ac39014 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x61f77ac39014 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x61f77ac40502 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x61f77ac40502 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x61f77ac40502 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x61f77ac40502 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x61f77ac40502 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x61f77b1a3b3f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x61f77b1a3b3f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7e610376caa4 - <unknown>
[INFO] [stdout]   45:     0x7e61037f9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::tests::test_class_loader_load_minimal
[INFO] [stdout]     tests::tests::test_interpreter_get_object_class
[INFO] [stdout]     tests::tests::test_interpreter_get_set_field_value
[INFO] [stdout]     tests::tests::test_interpreter_new_instance
[INFO] [stdout]     tests::tests::test_interpreter_run_minimal
[INFO] [stdout]     tests::tests::test_interpreter_run_test_get_static
[INFO] [stdout]     tests::tests::test_interpreter_run_test_ldc
[INFO] [stdout]     tests::tests::test_reflection_api_delegates_to_interpreter
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 60 passed; 8 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5a3463ee567a41f2a81cb2219c76c38108450ee41aad89e07aff2d4dff00bb47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a3463ee567a41f2a81cb2219c76c38108450ee41aad89e07aff2d4dff00bb47", kill_on_drop: false }`
[INFO] [stdout] 5a3463ee567a41f2a81cb2219c76c38108450ee41aad89e07aff2d4dff00bb47
